:root{--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--color-brand-hp: #e20613;--color-brand-hp-hover: #c0040f;--color-shopify-green: #008060;--color-shopify-green-hover: #006e52;--color-primary: #202223;--color-secondary: #6d7175;--color-bg-app: #f6f6f7;--color-bg-surface: #ffffff;--color-bg-subtle: #fafbfb;--color-border: #e1e3e5;--color-border-subtle: #ebebeb;--badge-blue-bg: #e4f5ff;--badge-blue-text: #0068a5;--badge-green-bg: #e3f1df;--badge-green-text: #0d522c;--badge-yellow-bg: #fff5ea;--badge-yellow-text: #8a4b00;--badge-purple-bg: #f3e8ff;--badge-purple-text: #6b21a8;--badge-gray-bg: #f1f2f3;--badge-gray-text: #4a4d50;--shadow-card: 0 1px 3px 0 rgba(0, 0, 0, .05), 0 1px 2px 0 rgba(0, 0, 0, .03);--shadow-hover: 0 4px 12px 0 rgba(0, 0, 0, .08);--shadow-modal: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--color-bg-app);color:var(--color-primary);line-height:1.5;-webkit-font-smoothing:antialiased}.app-header{background:var(--color-bg-surface);border-bottom:1px solid var(--color-border);padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:40;box-shadow:0 1px 2px #00000008}.brand-container{display:flex;align-items:center;gap:.85rem}.hp-badge-logo{background:linear-gradient(135deg,#e20613,#aa000a);color:#fff;font-weight:800;font-size:.9rem;padding:.35rem .65rem;border-radius:var(--radius-sm);letter-spacing:.5px;box-shadow:0 2px 4px #e206134d}.app-title{font-size:1.15rem;font-weight:700;color:var(--color-primary)}.store-info{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.api-status-tag{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;padding:.25rem .6rem;border-radius:20px;font-weight:500;background:#e6f4ea;color:#137333}.api-status-dot{width:7px;height:7px;border-radius:50%;background:#1e8e3e;box-shadow:0 0 0 2px #1e8e3e33;animation:pulseDot 2s infinite}@keyframes pulseDot{0%{transform:scale(.95);opacity:.8}50%{transform:scale(1.15);opacity:1}to{transform:scale(.95);opacity:.8}}.app-container{width:100%;max-width:1280px;margin:0 auto;padding:2rem 1.5rem}.nav-tabs{display:flex;gap:.5rem;border-bottom:1px solid var(--color-border);margin-bottom:1.75rem;flex-wrap:wrap}.nav-tab{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.92rem;font-weight:500;color:var(--color-secondary);background:transparent;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;white-space:nowrap}.nav-tab:hover{color:var(--color-primary)}.nav-tab.active{color:var(--color-shopify-green);border-bottom-color:var(--color-shopify-green);font-weight:600}.mobile-nav-bar,.sidebar-overlay,.mobile-sidebar{display:none}.mobile-nav-toggle,.mobile-sidebar-close{display:inline-flex;align-items:center;justify-content:center;padding:.45rem;color:var(--color-primary);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer}.mobile-sidebar-close{border-color:transparent;color:var(--color-secondary)}.mobile-nav-current{display:inline-flex;align-items:center;gap:.45rem;font-size:.95rem;font-weight:600;color:var(--color-primary)}.sidebar-nav{display:flex;flex-direction:column;padding:.5rem 0;overflow-y:auto}.sidebar-link{display:flex;align-items:center;gap:.7rem;width:100%;padding:.85rem 1.15rem;font-family:inherit;font-size:.92rem;font-weight:500;text-align:left;color:var(--color-secondary);background:transparent;border:none;border-left:3px solid transparent;cursor:pointer}.sidebar-link:hover{background:var(--color-bg-subtle);color:var(--color-primary)}.sidebar-link.active{color:var(--color-shopify-green);border-left-color:var(--color-shopify-green);background:var(--badge-green-bg);font-weight:600}.polaris-card{background:var(--color-bg-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);box-shadow:var(--shadow-card);overflow:hidden;margin-bottom:1.5rem}.card-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--color-border-subtle);display:flex;justify-content:space-between;align-items:center;background:var(--color-bg-subtle)}.card-title{font-size:1.05rem;font-weight:600;color:var(--color-primary)}.card-body{padding:1.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.55rem 1rem;font-size:.88rem;font-weight:600;border-radius:var(--radius-sm);border:1px solid transparent;cursor:pointer;transition:all .15s ease-in-out;text-decoration:none}.btn-primary{background-color:var(--color-shopify-green);color:#fff}.btn-primary:hover{background-color:var(--color-shopify-green-hover)}.btn-hp{background:linear-gradient(135deg,#e20613,#c0040f);color:#fff;box-shadow:0 2px 4px #e2061333}.btn-hp:hover{background:linear-gradient(135deg,#c0040f,#99000a);box-shadow:0 4px 8px #e206134d}.btn-secondary{background-color:var(--color-bg-surface);border-color:var(--color-border);color:var(--color-primary)}.btn-secondary:hover{background-color:#f1f2f3}.btn-sm{padding:.35rem .75rem;font-size:.82rem}.help-tip{position:relative;display:inline-flex;vertical-align:middle;margin-left:.4rem}.help-tip-button{display:inline-flex;align-items:center;justify-content:center;width:1.4rem;height:1.4rem;padding:0;color:var(--color-secondary);background-color:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:50%;cursor:pointer;transition:all .15s ease-in-out}.help-tip-button:hover{background-color:#f1f2f3;color:var(--color-primary)}.help-tip-button:focus-visible{outline:2px solid var(--color-shopify-green);outline-offset:1px}.help-tip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);z-index:110;padding:.35rem .6rem;font-size:.78rem;font-weight:500;line-height:1.3;white-space:nowrap;color:#fff;background:var(--color-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-hover);opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease;pointer-events:none}.help-tip-bubble:after{content:"";position:absolute;top:100%;left:50%;margin-left:-4px;border:4px solid transparent;border-top-color:var(--color-primary)}.help-tip:hover .help-tip-bubble,.help-tip:focus-within .help-tip-bubble{opacity:1;visibility:visible}.badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.78rem;font-weight:600;padding:.2rem .6rem;border-radius:12px;text-transform:capitalize}.badge-yellow{background:var(--badge-yellow-bg);color:var(--badge-yellow-text)}.badge-green{background:var(--badge-green-bg);color:var(--badge-green-text)}.badge-blue{background:var(--badge-blue-bg);color:var(--badge-blue-text)}.badge-purple{background:var(--badge-purple-bg);color:var(--badge-purple-text)}.badge-gray{background:var(--badge-gray-bg);color:var(--badge-gray-text)}.table-responsive,.charge-table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;background:linear-gradient(to right,var(--color-bg-surface) 30%,rgba(255,255,255,0)) left center,linear-gradient(to left,var(--color-bg-surface) 30%,rgba(255,255,255,0)) right center,linear-gradient(to right,#00000021,#0000) left center,linear-gradient(to left,#00000021,#0000) right center;background-repeat:no-repeat;background-size:36px 100%,36px 100%,14px 100%,14px 100%;background-attachment:local,local,scroll,scroll}.table-responsive:focus-visible,.charge-table-wrap:focus-visible{outline:2px solid var(--color-shopify-green);outline-offset:-2px}.polaris-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.polaris-table th{padding:.85rem 1.25rem;background:var(--color-bg-subtle);color:var(--color-secondary);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap;border-bottom:1px solid var(--color-border)}.polaris-table td{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border-subtle);vertical-align:middle}.polaris-table td.table-state{padding:3rem 1rem;color:var(--color-secondary)}.polaris-table .table-state-inner{position:sticky;left:0;width:min(100%,calc(100vw - 4rem));text-align:center}.polaris-table tr:hover{background-color:#fcfcfc}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000008c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:100;padding:1.5rem;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:#fff;width:100%;max-width:680px;max-height:90vh;border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden;animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:1.25rem 1.75rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-container>form{display:flex;flex-direction:column;flex:1;min-height:0}.modal-body{padding:1.75rem;overflow-y:auto;flex:1;min-height:0}.modal-footer{padding:1.25rem 1.75rem;border-top:1px solid var(--color-border);background:var(--color-bg-subtle);display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem;flex-shrink:0}.modal-footer-note{flex:1 0 100%;min-width:0;overflow-wrap:anywhere;margin:0;font-size:.82rem;line-height:1.45;color:#b42318}.form-group{margin-bottom:1.25rem}.form-label{display:block;font-size:.85rem;font-weight:600;color:var(--color-primary);margin-bottom:.4rem}.form-control{width:100%;padding:.6rem .85rem;font-size:.9rem;font-family:inherit;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#fff;transition:border-color .15s ease}.form-control:focus{outline:none;border-color:var(--color-shopify-green);box-shadow:0 0 0 2px #00806026}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.input-with-action{display:flex;align-items:center;gap:.5rem}.input-with-action .form-control{flex:1;min-width:0}.input-with-action .btn{flex-shrink:0;white-space:nowrap}.field-hint{display:flex;align-items:flex-start;gap:.3rem;font-size:.75rem;line-height:1.45;color:var(--color-secondary);margin-top:.35rem}.field-hint-chosen{color:var(--badge-green-text);font-weight:500}.picker-toolbar{display:flex;align-items:center;gap:.5rem}.picker-search{position:relative;flex:1;min-width:0}.picker-toolbar .btn{flex-shrink:0}.point-list{display:flex;flex-direction:column;gap:.5rem}.point-row{display:flex;align-items:flex-start;gap:.75rem;width:100%;padding:.7rem .85rem;text-align:left;font-family:inherit;font-size:.85rem;color:var(--color-primary);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.point-row:hover{border-color:var(--color-shopify-green);box-shadow:var(--shadow-card)}.point-row:focus-visible{outline:2px solid var(--color-shopify-green);outline-offset:1px}.point-row.is-selected{border-color:var(--color-shopify-green);background:var(--badge-green-bg)}.point-row-code{flex-shrink:0;padding:.2rem .55rem;font-size:.8rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--badge-gray-text);background:var(--badge-gray-bg);border-radius:12px}.point-row-body{flex:1;min-width:0}.point-row-name{display:block;font-weight:600;margin-bottom:.15rem}.point-row-meta{display:flex;align-items:flex-start;gap:.3rem;font-size:.8rem;color:var(--color-secondary)}.point-row-meta>svg{margin-top:.2rem}.modal-toolbar{padding:.9rem 1.75rem;border-bottom:1px solid var(--color-border);background:var(--color-bg-subtle)}.pdf-preview-box{background:#2a2a2a;border-radius:var(--radius-md);padding:1rem;min-height:400px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff}.pdf-viewer{max-height:min(62vh,560px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;border-radius:var(--radius-sm)}.pdf-page{display:block;width:100%;height:auto;max-width:560px;margin:0 auto .75rem;background:#fff;border-radius:var(--radius-sm)}.pdf-page:last-child{margin-bottom:0}.pdf-viewer-status{display:flex;align-items:center;justify-content:center;gap:.6rem;min-height:320px;color:#ddd;font-size:.88rem}.btn-disabled{opacity:.55;pointer-events:none}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toolbar-row{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.toolbar-search{position:relative;flex:1;min-width:240px}.toolbar-actions{display:flex;gap:.35rem;flex-wrap:wrap}.charge-table{width:100%;border-collapse:collapse;font-size:.85rem}.charge-table th,.charge-table td{text-align:left;vertical-align:top;padding:.5rem .6rem .5rem 0;border-bottom:1px solid var(--color-border)}.charge-table th{font-weight:600;color:var(--color-secondary)}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:768px){.app-header{padding:1rem;flex-direction:column;align-items:flex-start;gap:.75rem}.app-container{padding:1rem}.store-info{width:100%;justify-content:flex-start}.nav-tabs{display:none}.mobile-nav-bar{display:flex;align-items:center;gap:.75rem;padding-bottom:.85rem;margin-bottom:1.25rem;border-bottom:1px solid var(--color-border)}.sidebar-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease;z-index:90}.sidebar-overlay.open{opacity:1;visibility:visible}.mobile-sidebar{display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;width:min(82vw,300px);background:var(--color-bg-surface);border-right:1px solid var(--color-border);box-shadow:var(--shadow-modal);transform:translate(-100%);transition:transform .25s cubic-bezier(.16,1,.3,1);z-index:95}.mobile-sidebar.open{transform:translate(0)}.mobile-sidebar-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem;border-bottom:1px solid var(--color-border)}.card-header{padding:1rem;flex-direction:column;align-items:flex-start;gap:.75rem}.card-body,.modal-body,.modal-header,.modal-toolbar,.modal-footer{padding:1rem}.modal-footer{flex-wrap:wrap;gap:.5rem}.modal-footer .btn{width:100%}.form-grid,.route-grid{grid-template-columns:1fr}.toolbar-search{min-width:100%}.toolbar-actions{width:100%}.toolbar-actions .btn{flex:1 1 auto}.polaris-table,.polaris-table tbody,.polaris-table tr,.polaris-table td,.charge-table,.charge-table tbody,.charge-table tr,.charge-table td{display:block;width:auto}.polaris-table thead,.charge-table thead{display:none}.table-responsive,.charge-table-wrap{overflow-x:visible;background:none}.table-responsive{padding:.85rem;background:var(--color-bg-subtle)}.polaris-table tr,.charge-table tr{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.25rem .9rem;margin-bottom:.75rem}.polaris-table tr:last-child,.charge-table tr:last-child{margin-bottom:0}.polaris-table tr:hover{background:var(--color-bg-surface)}.polaris-table td,.charge-table td{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--color-border-subtle);text-align:right}.polaris-table td:before,.charge-table td:before{content:attr(data-label);flex:0 0 auto;text-align:left;font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.4px;color:var(--color-secondary)}.polaris-table td.table-primary-cell,.charge-table td.table-primary-cell{display:block;text-align:left;padding:.75rem 0;font-size:1rem}.polaris-table td.table-primary-cell:before,.charge-table td.table-primary-cell:before{display:none}.polaris-table td.table-actions,.charge-table td:last-child{border-bottom:none}.polaris-table td.table-actions{display:block;padding:.75rem 0;text-align:left!important}.polaris-table td.table-actions:before{display:none}.polaris-table td.table-actions>.btn{width:100%}.polaris-table td.table-actions>div{justify-content:stretch!important}.polaris-table td.table-actions>div .btn{flex:1 1 0}.polaris-table td.table-state{display:block;padding:2.5rem 1rem;text-align:center;border-bottom:none}.polaris-table td.table-state:before{display:none}.polaris-table tr:has(td.table-state){background:none;border:none;padding:0}.polaris-table .table-state-inner{position:static;width:100%}.settings-actions{flex-direction:column;align-items:stretch!important;gap:.75rem}.settings-actions .btn{width:100%}}@media(max-width:480px){.app-title{font-size:1rem}.hp-badge-logo{font-size:.78rem;padding:.3rem .55rem}.app-container{padding:.85rem}}
