:root{--navy:#00126b;--blue-header:#3256a0;--blue-mid:#3860b2;--blue-deep:#27437d;--blue-table:#bacae2;--blue-border:#2f5197;--nav-gray:#4d4d4d;--btn-gray:#a6a6a6;--amber:#ffbf00;--amber-border:#d8a200;--price-orange:#dd4f0e;--price-brown:#ac3e0b;--danger:#970000;--muted:#666;--tile-border:#d8d8d8;--text:#242424;--font:"Open Sans", sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:#e8e8e8}a{color:inherit;text-decoration:none}button,input{font-family:inherit}.app-shell{background:#fff;flex-direction:column;width:1366px;max-width:100%;min-height:768px;margin:0 auto;display:flex;box-shadow:0 0 24px #0000001f}.top-header{justify-content:space-between;align-items:center;min-height:72px;padding:10px 24px;display:flex}.logo{object-fit:contain;width:auto;max-width:220px;height:48px}.account-card{border-radius:4px;grid-template-columns:36px 1fr;align-items:center;gap:8px 12px;width:300px;padding:10px 14px;display:grid;box-shadow:0 2px 8px #00000026}.cart-link{color:var(--navy);grid-column:1/-1;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex}.cart-icon{width:28px;height:28px;fill:var(--navy)}.account-meta{color:var(--muted);flex-wrap:wrap;grid-column:1/-1;gap:6px;font-size:12px;display:flex}.account-meta a{color:inherit;text-decoration:none}.account-meta a:hover{text-decoration:underline}.account-meta button{color:var(--navy);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.top-nav{background:var(--nav-gray);color:#fff;align-items:stretch;height:39px;display:flex}.top-nav a,.top-nav span.nav-item{color:#fff;border-right:1px solid #ffffff26;align-items:center;padding:0 18px;font-size:10pt;display:flex}.top-nav a:hover{background:#ffffff14}.top-nav a.active{background:#0003}.main{flex:1;min-height:0;display:flex}.sidebar{flex-shrink:0;width:216px;padding:16px 12px 24px}.sidebar-title{background:var(--blue-header);color:#fff;margin-bottom:8px;padding:8px 10px;font-size:13px;font-weight:600}.category-btn{text-align:left;border:1px dashed var(--tile-border);cursor:pointer;width:100%;color:var(--navy);background:#fff;margin-bottom:6px;padding:10px 12px;font-size:13px;display:block}.category-btn:hover,.category-btn.active{border-color:var(--blue-mid);background:#f5f8fc}.sidebar-note{color:var(--danger);margin-top:16px;font-size:11px;line-height:1.35}.content{flex:1;min-width:0;padding:16px 24px 32px}.breadcrumb{color:var(--muted);margin-bottom:12px;font-size:12px}.page-title{color:var(--navy);margin:0 0 8px;font-size:20px}.page-blurb{color:var(--muted);margin-bottom:16px;font-size:13px}.hero{color:#fff;background:linear-gradient(135deg,#3256a0,#00126b);border-radius:2px;align-items:flex-end;width:100%;max-width:640px;height:320px;padding:24px;display:flex}.hero h2{margin:0;font-size:28px;font-weight:600}.home-carousel{border:1px solid var(--tile-border);background:#f0f3f8;width:100%;max-width:640px;height:320px;position:relative;overflow:hidden}.home-carousel-slide{width:100%;height:100%;color:inherit;display:block}.home-carousel-media{background:linear-gradient(#f7f9fc 0%,#e8eef7 100%);justify-content:center;align-items:center;width:100%;height:100%;padding:28px 48px 64px;display:flex}.home-carousel-media img{object-fit:contain;max-width:100%;max-height:100%}.home-carousel-caption{color:#fff;background:linear-gradient(#0000,#00126be0);padding:12px 48px 28px 16px;position:absolute;bottom:0;left:0;right:0}.home-carousel-name{margin-bottom:4px;font-size:16px;font-weight:600;line-height:1.3}.home-carousel-meta{opacity:.92;font-size:12px}.home-carousel-price{color:var(--amber);font-weight:700}.home-carousel-nav{color:#fff;cursor:pointer;z-index:2;background:#00126b8c;border:none;width:36px;height:48px;padding:0;font-size:28px;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.home-carousel-nav:hover{background:#00126bcc}.home-carousel-nav.prev{left:0}.home-carousel-nav.next{right:0}.home-carousel-dots{z-index:2;justify-content:center;gap:6px;display:flex;position:absolute;bottom:8px;left:0;right:0}.home-carousel-dots button{cursor:pointer;background:0 0;border:1px solid #ffffffd9;border-radius:50%;width:8px;height:8px;padding:0}.home-carousel-dots button.active{background:#fff}.search-row{gap:8px;margin-bottom:16px;display:flex}.search-row input{border:1px solid #c7c7c7;flex:1;height:36px;padding:0 10px;font-size:13px}.search-row button,.btn{cursor:pointer;border:1px solid #0000;height:36px;padding:0 16px;font-size:13px;font-weight:600}.btn-amber{background:var(--amber);border-color:var(--amber-border);color:#000}.btn-amber:hover{filter:brightness(.95)}.btn-blue{background:var(--blue-mid);border-color:var(--blue-mid);color:#fff}.btn-gray{background:var(--btn-gray);border-color:var(--btn-gray);color:#fff}.subcats{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.chip{border:1px solid var(--blue-border);color:var(--navy);cursor:pointer;background:#fff;padding:6px 10px;font-size:11px}.chip.active{background:var(--blue-table)}.product-row{border-bottom:1px solid #e6e6e6;grid-template-columns:72px 1fr auto;align-items:center;gap:14px;padding:12px 0;display:grid}.thumb{width:72px;height:72px;color:var(--blue-header);text-align:center;background:#f0f3f8;border:1px solid #d8d8d8;justify-content:center;align-items:center;padding:2px;font-size:11px;display:flex;overflow:hidden}.thumb img,.detail-image img{object-fit:contain;width:100%;height:100%}.product-name{color:var(--navy);font-size:14px;font-weight:600}.product-meta{color:var(--muted);margin-top:4px;font-size:12px}.price{color:var(--price-brown);font-size:14px;font-weight:700}.price-contact{color:var(--danger);font-size:12px;font-weight:600}.product-actions{flex-direction:column;align-items:flex-end;gap:8px;min-width:140px;display:flex}.detail-grid{grid-template-columns:360px 1fr;gap:24px;display:grid}.detail-image{width:100%;height:285px;color:var(--blue-header);background:#f0f3f8;border:1px solid #d8d8d8;justify-content:center;align-items:center;display:flex}.detail-price{color:var(--price-orange);margin:8px 0;font-size:28px;font-weight:700}.field-row{grid-template-columns:120px 1fr;align-items:center;gap:8px;margin:8px 0;font-size:13px;display:grid}.qty-input{border:1px solid #c7c7c7;width:80px;height:36px;padding:0 8px}.toast{background:var(--navy);color:#fff;z-index:50;border-radius:4px;padding:10px 16px;font-size:13px;position:fixed;top:16px;right:16px}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{background:var(--blue-table);color:var(--navy);text-align:left;border:1px solid var(--blue-border);padding:10px 8px}.table td{vertical-align:top;border:1px solid #d8d8d8;padding:10px 8px}.qty-controls{align-items:center;gap:6px;display:inline-flex}.qty-controls button:not(.linkish){background:var(--blue-mid);color:#fff;cursor:pointer;border:none;width:28px;height:28px;font-weight:700}.qty-controls .linkish{white-space:nowrap;width:auto;height:auto;margin-left:4px}.cart-summary{border:1px solid var(--blue-border);width:280px;margin-top:16px;margin-left:auto}.cart-summary .row{justify-content:space-between;padding:8px 12px;font-size:13px;display:flex}.cart-summary .total-row{background:var(--blue-deep);color:#f1f4f9;font-weight:700}.table tr.fee-row td{background:#f3f6fa;font-style:italic}.cart-actions{justify-content:space-between;gap:12px;margin-top:20px;display:flex}.form-grid{gap:12px;max-width:420px;margin-top:16px;display:grid}.form-grid label{color:var(--navy);gap:4px;font-size:13px;font-weight:600;display:grid}.form-grid input{border:1px solid #c7c7c7;height:40px;padding:0 10px;font-weight:400}.login-page{background:#dfe6f0;justify-content:center;align-items:center;min-height:100vh;display:flex}.login-card{background:#fff;width:420px;padding:32px;box-shadow:0 4px 20px #0000001f}.login-card h1{color:var(--navy);margin:0 0 8px;font-size:22px}.login-card p{color:var(--muted);margin:0 0 20px;font-size:13px}.error{color:var(--danger);margin-bottom:8px;font-size:13px}.success-banner{color:#1b5e20;background:#eef6ee;border:1px solid #9ccc9c;margin:16px 0;padding:14px 16px;font-size:14px}.linkish{color:var(--blue-mid);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;text-decoration:underline}.empty{color:var(--muted);padding:24px 0;font-size:14px}
