.product-form[data-v-a9b0114b]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.product-form label[data-v-a9b0114b],.image-upload-control[data-v-a9b0114b]{display:grid;gap:6px;color:#49627b;font-size:.85rem;font-weight:600}.product-form input[data-v-a9b0114b],.product-form textarea[data-v-a9b0114b],.product-form select[data-v-a9b0114b]{border:1px solid #cfdeeb;border-radius:12px;background:#fff;color:#18324b;padding:10px;font:inherit}.image-upload-control[data-v-a9b0114b]{margin-top:14px;padding:12px;border:1px dashed #7ab7df;border-radius:12px;color:#18324b}.image-upload-control span[data-v-a9b0114b]{color:#6e8198}.product-form-wide[data-v-a9b0114b]{grid-column:1 / -1}.product-form button[data-v-a9b0114b]{grid-column:1 / -1;border:0;border-radius:12px;background:#0b7fc4;color:#fff;padding:11px;font-weight:600;cursor:pointer}.product-form button[data-v-a9b0114b]:disabled{opacity:.6;cursor:wait}.campaign-edit-form[data-v-a9b0114b]{margin-top:16px;padding-top:16px;border-top:1px solid #e4ecf5}.campaign-edit-actions[data-v-a9b0114b]{grid-column:1 / -1;display:flex;gap:10px}.campaign-edit-actions button[data-v-a9b0114b]{flex:1}.campaign-edit-actions .secondary-button[data-v-a9b0114b]{background:#eaf1f7;color:#18324b}@media(max-width:700px){.product-form[data-v-a9b0114b]{grid-template-columns:1fr}}@font-face{font-family:Garet;src:url(/fonts/Garet-Book.woff2) format("woff2");font-style:normal;font-weight:400 600;font-display:swap}@font-face{font-family:Garet;src:url(/fonts/Garet-Heavy.woff2) format("woff2");font-style:normal;font-weight:700 900;font-display:swap}:root{font-family:Garet,system-ui,sans-serif;color:#193650;background:#f4f7fb;font-synthesis:none}*{box-sizing:border-box}body{min-width:320px;margin:0;background:#f4f7fb}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid #3ab8ff;outline-offset:3px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;z-index:1000;left:20px;top:-56px;padding:12px 16px;border-radius:10px;background:#123b67;color:#fff;font-weight:700;text-decoration:none}.skip-link:focus{top:20px}.shell{min-height:100vh;background:radial-gradient(circle at 88% -20%,#dff4ff 0,transparent 31rem),#f4f7fb}.n-layout,.n-layout-scroll-container{background:transparent!important}.n-layout-sider{background:#fff!important;border-right:1px solid #e6edf5!important;box-shadow:10px 0 35px #133b6709}.side-brand{display:flex;align-items:center;min-height:88px;padding:22px 24px;border-bottom:1px solid #edf1f6}.side-brand img{width:138px;height:38px;object-fit:contain;object-position:left center}.n-menu{padding:18px 12px}.n-menu-item-content{min-height:42px!important;margin:4px 0;border-radius:11px!important;font-size:.86rem;font-weight:600}.n-menu-item-content--selected{box-shadow:inset 3px 0 #169fe9}.header{position:sticky;z-index:10;top:0;height:102px;padding:20px 40px;display:flex;align-items:center;justify-content:space-between;background:#f4f7fbd1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid rgba(224,234,244,.8)}.header h1{margin:5px 0 0;color:#123b67;font-size:clamp(1.45rem,2vw,2rem);letter-spacing:-.045em;line-height:1}.eyebrow{color:#108bd0;font-size:.66rem;letter-spacing:.16em;font-weight:700}.content{width:min(100%,1560px);padding:30px 40px 56px}.n-card{border:1px solid #e6edf5;border-radius:18px;box-shadow:0 10px 30px #133b670e}.n-card>.n-card__content{padding:22px}.muted{color:#718297}.error{color:#be2633}.table-card{margin-top:24px}.control-card{background:linear-gradient(120deg,#103a65,#156ea8)!important;color:#fff;border:0}.control-card .n-card-header{color:#b9eaff}.control-card p{margin:0}.control-card strong{color:#7ce0ff;font-size:1.25em}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.kpi-card{min-width:0;overflow:hidden;position:relative}.kpi-card:before{content:"";position:absolute;width:86px;height:86px;right:-35px;top:-42px;border-radius:50%;background:#e5f6ff}.kpi-card--featured{background:linear-gradient(135deg,#0c5993,#139ce0)!important;border-color:transparent}.kpi-card--featured:before{background:#ffffff24}.kpi-card--featured .n-statistic-value,.kpi-card--featured .n-statistic-label,.kpi-card--featured .kpi-card__note{color:#fff!important}.kpi-card .n-statistic-label{color:#6c7c90;font-size:.78rem;font-weight:600}.kpi-card .n-statistic-value{color:#123b67;font-size:1.35rem;font-weight:700;letter-spacing:-.035em}.kpi-card__note{display:block;margin-top:11px;color:#8391a2;font-size:.68rem;line-height:1.35}.campaign-card{margin-top:14px;transition:transform .18s ease,box-shadow .18s ease}.campaign-card:hover{transform:translateY(-2px);box-shadow:0 16px 35px #133b6717}.campaign-row,.audit-row{display:flex;align-items:center;justify-content:space-between;gap:20px}.campaign-row h2,.audit-row h2{margin:5px 0;color:#123b67;font-size:1.08rem;letter-spacing:-.025em}.campaign-row p{margin:4px 0}.campaign-actions,.table-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.data-table{margin-top:22px;overflow:hidden;background:#fff;border:1px solid #e4ebf3;border-radius:18px;box-shadow:0 10px 30px #133b670d}.data-table__toolbar{display:flex;gap:10px;align-items:center;padding:16px;border-bottom:1px solid #edf1f6}.data-table__search{display:flex;flex:1 1 270px;align-items:center;gap:9px;min-width:0;padding:0 12px;border:1px solid #d9e3ed;border-radius:10px;background:#f9fbfd;color:#8091a4}.data-table__search input{width:100%;min-height:38px;border:0;outline:0;background:transparent;color:#173752}.data-table__filter select{min-height:40px;padding:0 30px 0 12px;border:1px solid #d9e3ed;border-radius:10px;background:#fff;color:#425c73}.data-table__scroll{overflow-x:auto}.data-table table{width:100%;min-width:720px;border-collapse:collapse}.data-table th{padding:0;text-align:left;background:#f8fafc;border-bottom:1px solid #eaf0f5}.data-table td{padding:15px 16px;border-bottom:1px solid #edf1f5;color:#29455f;font-size:.86rem;vertical-align:middle}.data-table tbody tr:last-child td{border-bottom:0}.data-table tbody tr:hover{background:#fbfdff}.data-table__sort{display:inline-flex;align-items:center;gap:7px;width:100%;padding:13px 16px;border:0;background:transparent;color:#698097;font-size:.69rem;font-weight:700;letter-spacing:.06em;text-align:left;text-transform:uppercase;cursor:pointer}.data-table__sort:hover,.data-table__sort.is-active{color:#117dc0}.data-table__empty{padding:36px!important;color:#8291a2!important;text-align:center}.data-table__pagination{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;border-top:1px solid #edf1f5;color:#75889b;font-size:.78rem}.data-table__pagination>div{display:flex;align-items:center;gap:10px}.data-table__pagination button{border:1px solid #dce6ee;border-radius:8px;background:#fff;color:#36536d;padding:7px 10px;cursor:pointer}.data-table__pagination button:disabled{opacity:.45;cursor:not-allowed}.table-link{border:0;padding:0;background:none;color:#123b67;font-weight:700;text-align:left;cursor:pointer}.table-link:hover{color:#0d96dc}.table-secondary{color:#788a9c}.transaction-id{color:#46647e;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}.status-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#edf2f6;color:#607488;font-size:.7rem;font-weight:700;white-space:nowrap}.status-pill--active,.status-pill--approved,.status-pill--confirmed{background:#e5f8ef;color:#0b7a48}.status-pill--pending{background:#fff3db;color:#9a6900}.status-pill--danger,.status-pill--rejected{background:#ffeaec;color:#b12b3a}.admin-loading{display:grid;min-height:100vh;place-items:center;color:#6e8198}.admin-login{display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at 85% 10%,#d4f1ff,transparent 30%),radial-gradient(circle at 7% 90%,#eaf3ff,transparent 27%),#f6f9fd}.admin-login__card{width:min(100%,460px);overflow:hidden}.admin-login__card:before{display:block;height:5px;margin:-22px -22px 28px;background:linear-gradient(90deg,#0b5c9c,#1db7ee);content:""}.admin-login h1{margin:8px 0;color:#123b67;font-size:2.3rem;letter-spacing:-.055em}.login-form{display:grid;gap:16px;margin-top:26px}.login-form label{display:grid;gap:7px;color:#49627b;font-size:.84rem;font-weight:700}.login-form input{min-height:50px;border:1px solid #d5e1eb;border-radius:11px;background:#fbfdff;color:#18324b;padding:11px 13px}.login-form button{min-height:50px;border:0;border-radius:11px;background:linear-gradient(135deg,#0b5c9c,#129ee0);box-shadow:0 9px 18px #1282c338;color:#fff;font-weight:700;cursor:pointer}.login-form button:disabled{opacity:.6;cursor:wait}.form-error{display:flex;gap:8px;align-items:flex-start;margin:0;padding:10px 12px;border:1px solid #f1c5c8;border-radius:10px;background:#fff0f1;color:#a3212b;font-size:.86rem}.audit-toolbar{display:flex;gap:12px;align-items:center}.audit-row code{color:#8d9cab}@media(max-width:1380px){.kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.header{height:auto;min-height:88px;padding:18px 20px}.content{padding:22px 20px 42px}.campaign-row,.audit-row{align-items:flex-start;flex-direction:column}.campaign-actions{justify-content:flex-start}}@media(max-width:640px){.kpi-grid{grid-template-columns:1fr 1fr}.data-table__toolbar,.data-table__pagination{align-items:stretch;flex-direction:column}.data-table__pagination>div{justify-content:space-between}}
