/* Practical buyer workspace, matching the approved student-built landing identity. */
@font-face{font-family:'GP Helvetica';src:url('../assets/fonts/HelveticaNeueRoman.otf') format('opentype');font-weight:400;font-display:swap}
@font-face{font-family:'GP Helvetica';src:url('../assets/fonts/HelveticaNeueBold.otf') format('opentype');font-weight:600 900;font-display:swap}
:root,[data-theme=light]{--gp-primary:#5D1916;--gp-primary-hover:#5D1F14;--gp-primary-active:#5D1916;--gp-primary-light:#F4E8DC;--gp-primary-border:#BA8C63;--gp-primary-glow:transparent;--gp-text-main:#29231F;--gp-text-heading:#29231F;--gp-text-secondary:#5A4D43;--gp-text-muted:#655950;--gp-text-faint:#655950;--gp-navy:#29231F;--gp-slate:#5A4D43;--gp-background:#FDFBF7;--gp-surface:#FDFBF7;--gp-surface-2:#F4F1EB;--gp-surface-3:#EEEAE2;--gp-surface-elevated:#FDFBF7;--gp-border:#DDD8CF;--gp-border-strong:#BA8C63;--gp-border-focus:#5D1916;--gp-info:#5D1916;--gp-info-bg:#F4E8DC;--gp-subsite-marketplace:#5D1916;--primary:#5D1916;--primary-dark:#5D1F14;--primary-deep:#5D1916;--primary-soft:#F4E8DC;--primary-border:#BA8C63;--primary-glow:transparent;--subsite-accent:#5D1916;--subsite-soft:#F4E8DC;--subsite-border:#BA8C63;--navy:#29231F;--slate:#5A4D43;--body:#5A4D43;--muted:#655950;--line:#DDD8CF;--line-strong:#BA8C63;--line-soft:#EEEAE2;--bg:#FDFBF7;--bg-soft:#F4F1EB;--bg-card:#FDFBF7;--bg-elevated:#FDFBF7;--input-bg:#FDFBF7;--input-border:#8B796D;--sky:#5D1916;--sky-soft:#F4E8DC}
:root,[data-theme]{--font-main:'GP Helvetica',Helvetica,Arial,sans-serif;--gp-font-family:var(--font-main);--container:1200px;--r-xs:3px;--r-sm:3px;--r-btn:4px;--r-md:4px;--r-lg:6px;--gp-radius-xs:3px;--gp-radius-sm:3px;--gp-radius-md:4px;--gp-radius-lg:4px;--gp-radius-xl:6px;--shadow-xs:none;--shadow-sm:none;--shadow-md:0 4px 16px #29231F14;--shadow-lg:0 8px 24px #29231F24;--gp-shadow-xs:none;--gp-shadow-sm:none;--gp-shadow-md:var(--shadow-md);--gp-shadow-lg:var(--shadow-lg)}
[data-theme=dark]{--primary:#5D1916;--primary-dark:#6C3603;--primary-deep:#5D1916;--primary-soft:#493329;--primary-border:#BA8C63;--primary-glow:transparent;--subsite-accent:#5D1916;--subsite-soft:#493329;--subsite-border:#5A4D43;--bg:#1E1714;--bg-soft:#2B211B;--bg-card:#2B211B;--bg-elevated:#5A4D43;--input-bg:#2B211B;--input-border:#BA8C63;--navy:#FDFBF7;--slate:#F1E7DB;--body:#F1E7DB;--muted:#D7C9BC;--line:#6A5648;--line-strong:#8B796D;--line-soft:#493329;--sky:#5D1916;--sky-soft:#493329;--gp-primary:var(--primary);--gp-primary-hover:var(--primary-dark);--gp-primary-active:var(--primary-deep);--gp-primary-light:var(--primary-soft);--gp-primary-border:var(--primary-border);--gp-text-main:var(--navy);--gp-text-heading:var(--navy);--gp-text-secondary:var(--body);--gp-text-muted:var(--muted);--gp-text-faint:var(--muted);--gp-background:var(--bg);--gp-surface:var(--bg-card);--gp-surface-2:var(--bg-soft);--gp-surface-3:var(--line-soft);--gp-surface-elevated:var(--bg-elevated);--gp-border:var(--line);--gp-border-strong:var(--line-strong);--gp-border-focus:var(--primary);--gp-info:var(--sky);--gp-info-bg:var(--sky-soft);--gp-subsite-marketplace:var(--sky)}
body.shop-student{font-family:var(--font-main);background:var(--bg);color:var(--body)}
.shop-student .shop-header-stack{border-top:0;box-shadow:none}
.shop-student .top-micro-bar{background:var(--bg-soft);border-color:var(--line)}
.shop-student .header{background:var(--bg);box-shadow:none}
.shop-student .gp-brand-title{color:var(--navy);font-size:19px}
.shop-student .gp-brand-sub{color:var(--muted);font-size:11px}
.shop-student .gp-brand-logo{border-radius:0;background:transparent}
.shop-student .search-form{border:1px solid var(--input-border);border-radius:3px;background:var(--input-bg);box-shadow:none}
.shop-student .search-form:focus-within{border-color:var(--primary);box-shadow:none;outline:2px solid var(--primary);outline-offset:2px}
.shop-student .search-btn{border-radius:0 2px 2px 0;background:var(--primary);color:#FDFBF7}
.shop-student .search-vision-btn{color:var(--primary)}
.shop-student .search-input::placeholder{color:var(--muted);opacity:1}
.shop-student .header-search-tags{font-size:11px}
.shop-student .subnav{background:var(--bg);border-block:1px solid var(--line)}
.shop-student .subnav-item{border-radius:0;font-size:13px}
.shop-student .subnav-item.active{background:transparent;color:var(--primary);box-shadow:inset 0 -2px var(--primary)}
.shop-student .btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:4px;min-height:42px;height:auto;line-height:1.35;box-shadow:none;font-family:var(--font-main)}
.shop-student .btn-primary{background:var(--primary);border-color:var(--primary);color:#FDFBF7}
[data-theme=dark] .shop-student :is(.btn-primary,.search-btn){color:#29231F}
.shop-student :is(input,select,textarea){accent-color:var(--primary);caret-color:var(--primary)}
.shop-student :is(.form-control,.price-input,.sort-select){border-radius:3px;background:var(--input-bg);color:var(--navy);border-color:var(--input-border)}
.shop-student :is(.form-control,.price-input,.sort-select):focus{border-color:var(--primary);outline:2px solid var(--primary);outline-offset:2px;box-shadow:none}
.shop-student .home-guest-intro{padding:24px 0 28px;border-bottom:1px solid var(--line);margin-bottom:28px;background:transparent}
.shop-student .home-guest-intro h1{font-size:25px!important;line-height:1.25;max-width:36ch;font-weight:700!important;color:var(--primary)!important}
.shop-student .home-categories-grid{grid-template-columns:repeat(var(--home-category-columns, 1),minmax(0,1fr));gap:0 24px;align-items:stretch}
.shop-student .home-categories-grid>a{background:transparent!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;padding:14px 0!important;box-shadow:none!important}
.shop-student .product-grid{gap:24px 20px}
.shop-student .product-card{border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
.shop-student .product-card:hover{transform:none;box-shadow:none;border-color:var(--line)}
.shop-student .product-card-img-wrapper{border-radius:3px;background:var(--bg-soft)}
.shop-student .product-card:hover .product-card-img{transform:none}
.shop-student .product-card-body{padding:14px 0;border-bottom:1px solid var(--line)}
.shop-student .product-title{font-size:14px;line-height:1.45}
.shop-student .product-price{font-size:18px;color:var(--primary)}
.shop-student .product-moq{border-radius:3px;background:var(--bg-soft)}
.shop-student .product-card-actions .btn{font-size:12px;min-height:38px}
.shop-student .home-suppliers-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}
.shop-student .home-suppliers-grid>*,.shop-student .home-materials-grid>*{border-radius:3px!important;box-shadow:none!important;background:var(--bg-soft)!important;border-color:var(--line)!important}
.shop-student .page-layout{grid-template-columns:220px minmax(0,1fr);gap:28px}
.shop-student .filter-panel{border:0;border-radius:0;background:var(--bg-soft);padding:18px}
.shop-student .filter-title{font-size:13px}
.shop-student .category-filter-item{border-radius:2px}
.shop-student .results-header{border-radius:0;background:transparent;border-bottom:1px solid var(--line);padding:0 0 16px;gap:16px;flex-wrap:wrap}
.shop-student .tier-pricing-panel{border:0;border-block:1px solid var(--line);border-radius:0;background:var(--bg-soft);box-shadow:none}
.shop-student :is(.tier-table,.specs-table){font-variant-numeric:tabular-nums}
.shop-student .gallery-main{border-radius:4px;box-shadow:none;background:var(--bg-soft)}
.shop-student .thumb-item{border-radius:3px}
.shop-student .supplier-card{background:transparent;border:0;border-block:1px solid var(--line);border-radius:0;box-shadow:none}
.shop-student .supplier-profile-card{background:var(--bg-soft);border:0;border-radius:3px;box-shadow:none}
.shop-student .supplier-meta-grid{border-top:1px solid var(--line);padding-top:16px}
.shop-student .cart-supplier-group{border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent}
.shop-student .cart-supplier-header{background:var(--bg-soft);border-radius:0;border-block:1px solid var(--line)}
.shop-student .cart-summary-card{border:1px solid var(--line);border-radius:3px;background:var(--bg-soft);box-shadow:none}
.shop-student #checkoutForm{border:0!important;background:transparent!important;padding:0!important;border-radius:0!important}
.shop-student .checkout-payment-methods label{border-radius:3px!important;background:var(--bg-card)}
.shop-student .checkout-payment-methods label:has(input:checked){border-color:var(--primary)!important;background:var(--primary-soft)}
.shop-student .account-sidebar{background:var(--bg-soft);border:0;border-radius:3px;box-shadow:none;padding:16px}
.shop-student .account-content-card{background:transparent;border:0;border-radius:0;box-shadow:none;padding:24px 0}
.shop-student .account-menu-item{border-radius:3px;color:var(--body)}
.shop-student .account-menu-item.active{background:var(--primary-soft)!important;color:var(--primary)}
.shop-student .account-menu-group-title{letter-spacing:0;text-transform:none;font-size:12px}
.shop-student .order-card{border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent}
.shop-student .order-card-header{background:var(--bg-soft);border-radius:0}
.shop-student .table-container{border-radius:3px;box-shadow:none}
.shop-student table{font-variant-numeric:tabular-nums}
.shop-student :is(.mobile-bottom-nav,.mobile-menu-drawer,.mobile-menu-header){background:var(--bg-card);border-color:var(--line)}
.shop-student .mobile-nav-item.active{color:var(--primary)}
.shop-student .gp-footer{background:var(--bg-soft);color:var(--body);border-color:var(--line)}
.shop-student .gp-footer .gp-brand-title{color:var(--navy)!important}
.shop-student .gp-footer :is(p,a,.gp-footer-bottom,.gp-footer-legal-links a){color:var(--muted)}
.shop-student .gp-footer-heading{color:var(--navy)}
.shop-student .gp-footer :is(a:hover,.gp-brand-sub){color:var(--primary)}
.shop-student .gp-footer-bottom{border-color:var(--line)}
.shop-student .sourcing-guide-intro{background:var(--bg-soft);border-radius:3px;box-shadow:none}
::selection{background:#5D1916;color:#5D1916}
@media(max-width:1024px){.shop-student .page-layout{gap:20px}}
@media(max-width:768px){.shop-student .page-layout{grid-template-columns:1fr}.shop-student .home-guest-intro{padding:12px 0 24px}.shop-student .home-guest-intro h1{font-size:22px!important}.shop-student .home-guest-intro .btn{font-size:12px}.shop-student .home-suppliers-grid{grid-template-columns:1fr}.shop-student .product-grid{gap:20px 12px}.shop-student .product-card-body{padding:10px 0}.shop-student .product-price{font-size:16px}.shop-student .product-title{font-size:13px}.shop-student .account-content-card{padding-top:20px}.shop-student .account-sidebar{padding:12px}.shop-student .results-header{gap:12px}.shop-student .gp-footer-legal-links{flex-wrap:wrap}.shop-student .filter-panel{border-radius:0}.shop-student .cart-summary-card{padding:18px}.shop-student .home-categories-grid>a{min-width:0}.shop-student .product-card-actions{flex-wrap:wrap}}
.shop-student :is(.cart-drawer-overlay,.mobile-menu-overlay,.vsearch-modal-backdrop){background:rgb(32 36 43 / .55)}
.shop-student .vsearch-camera-panel{background:#29231F;border-color:#5A4D43}
[data-theme=dark] .shop-student :is(.vsearch-modal-dialog,.vsearch-modal-header,.vsearch-dropzone,.vsearch-results-header,.vsearch-result-card){background:var(--bg-card);border-color:var(--line);color:var(--body)}
[data-theme=dark] .shop-student .vsearch-dropzone:hover{border-color:var(--primary)}
[data-theme=dark] .shop-student :is(.toast-message,.compare-dock){background:#EEEAE2;color:#29231F}
.shop-student .compare-dock{border-radius:4px}

/* Approved native-material palette: Narra, Bronze, Yakal, Rattan, Bamboo, and warm neutrals. */
:root,[data-theme=light]{--gp-primary:#5D1916;--gp-primary-hover:#6C3603;--gp-primary-active:#5D1916;--gp-primary-light:#F4E8DC;--gp-primary-border:#BA8C63;--primary:#5D1916;--primary-hover:#6C3603;--primary-dark:#6C3603;--primary-deep:#5D1916;--primary-active:#5D1916;--primary-light:#F4E8DC;--primary-soft:#F4E8DC;--primary-border:#BA8C63;--color-primary:#5D1916;--color-primary-hover:#6C3603;--color-primary-active:#5D1916;--color-primary-light:#F4E8DC;--color-primary-border:#BA8C63;--gp-border-focus:#5D1916;--focus-outline-color:#5D1916;--gp-caret-color:#5D1916;--gp-selection-bg:#F4E8DC;--gp-selection-text:#5D1F14}
[data-theme=dark]{--gp-primary:#5D1916;--gp-primary-hover:#6C3603;--gp-primary-active:#6C3603;--gp-primary-light:#493329;--gp-primary-border:#BA8C63;--primary:#5D1916;--primary-hover:#6C3603;--primary-dark:#6C3603;--primary-active:#6C3603;--primary-light:#493329;--primary-soft:#493329;--primary-border:#BA8C63;--color-primary:#5D1916;--color-primary-hover:#6C3603;--color-primary-light:#493329}
body a{color:#5D1916}
body a:hover{color:#5D1F14}
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary){background:#5D1916;border-color:#5D1916;color:#29231F}
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary):hover:not(:disabled){background:#6C3603;border-color:#6C3603;color:#29231F}
[data-theme=dark] body a{color:#F0CB5B}
body :focus-visible{outline-color:#5D1916}
::selection{background:#F4E8DC;color:#5D1F14}
.shop-student .btn-primary,.shop-student .search-btn{background:#5D1916;border-color:#5D1916;color:#29231F}
.shop-student .btn-primary:hover,.shop-student .search-btn:hover{background:#6C3603;border-color:#6C3603;color:#29231F}
.shop-student .product-price{color:#5D1916}
[data-theme=dark] .shop-student .product-price{color:#F0CB5B}

.shop-student .product-card-img-wrapper{position:relative}
.shop-student .representative-photo-label{position:absolute;left:8px;bottom:8px;z-index:1;padding:3px 6px;background:#FDFBF7;color:#5D1916;border:1px solid #BA8C63;font-size:10px;font-weight:700;line-height:1.2;pointer-events:none}
.shop-student .representative-photo-note{margin:8px 0 14px;color:var(--body);font-size:12px;line-height:1.5}
.shop-student .representative-photo-note a{font-weight:700;text-decoration:underline;text-underline-offset:2px}
.shop-student :is(.btn-outline,.subnav-item.active,.cta-quote-item,.gp-brand-sub,.mobile-nav-item.active){color:#5D1916}
.shop-student .cta-quote-item{color:#5D1916!important}
[data-theme=dark] .shop-student :is(.btn-outline,.subnav-item.active,.cta-quote-item,.gp-brand-sub,.mobile-nav-item.active){color:#F0CB5B}

/* Off-screen drawers must not cast a shadow onto the page edge. */
.shop-student :is(.mobile-menu-drawer,.cart-drawer):not(.active){box-shadow:none}

/* Live categories balance their rows as the available catalog and width change. */
.home-category{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;text-decoration:none;min-width:0}
.home-category-icon{width:42px;height:42px;border-radius:var(--r-sm);background:var(--primary-soft);color:var(--primary);display:grid;place-items:center}
.home-category-icon .material-symbols-outlined{font-size:22px}
.home-category-name{font-size:13px;font-weight:700;color:var(--navy);line-height:1.3;overflow-wrap:anywhere}
.home-category-count{font-size:11px;color:var(--muted);margin-top:auto}
.home-category:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
.home-category:hover .home-category-name{text-decoration:underline;text-underline-offset:3px}
.home-category-message{grid-column:1 / -1;color:var(--muted)}
.store-search-results{margin-bottom:24px}
.store-search-title{font-size:18px;font-weight:700;color:var(--navy);margin:0 0 12px}
.store-search-list{display:grid;gap:12px}
.store-search-card{display:flex;align-items:center;gap:14px;padding:18px 0;border-block:1px solid var(--line);color:var(--navy);text-decoration:none}
.store-search-icon{flex-shrink:0;padding:12px;background:var(--primary-soft);color:var(--primary);border-radius:var(--r-sm)}
.store-search-info{display:grid;gap:4px;flex:1;min-width:0;overflow-wrap:anywhere}
.store-search-info>span{font-size:12px;color:var(--muted)}
.store-search-action{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--primary)}
.store-search-action .material-symbols-outlined{font-size:18px}
.store-search-card:hover strong{text-decoration:underline;text-underline-offset:3px}
.store-search-card:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
@media(max-width:520px){.store-search-card{flex-wrap:wrap}.store-search-action{margin-left:62px}}
.home-categories-grid--two-columns>a:last-child:nth-child(odd){grid-column:1 / -1}

/* Approved white labels on filled orange actions, including hover and dark mode. */
body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary),.shop-student .search-btn{color:#fff!important}

/* Remove native number spinners so quantity digits stay visually centered. */
.shop-student .qty-input{appearance:textfield;-moz-appearance:textfield;padding:0;text-align:center;line-height:normal}
.shop-student .qty-input::-webkit-inner-spin-button,.shop-student .qty-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* Pale and outlined actions retain readable labels. */
body :is(.btn-outline,.btn--outline,.btn-secondary,.btn--secondary,.btn--subtle,.gp-btn--secondary){color:#5D1916!important}
[data-theme=dark] body :is(.btn-outline,.btn--outline,.btn-secondary,.btn--secondary,.btn--subtle,.gp-btn--secondary){color:#F0CB5B!important}

/* Match the public homepage brand lockup in the shop header. */
.shop-student .header .gp-brand{gap:10px}
.shop-student .header .gp-brand-text{gap:3px}
.shop-student .header .gp-brand-title{font-size:18px;font-weight:700;line-height:1.15;letter-spacing:-.02em;color:var(--navy)}
.shop-student .header .gp-brand-sub{font-size:11px;font-weight:500;line-height:1.2;letter-spacing:0;color:var(--muted)}

/* Match the public site's mobile-inspired bag and two-tone wordmark. */
.shop-student :is(.header,.gp-footer) .gp-brand-title { display:inline-flex; white-space:nowrap; font-size:22px; font-weight:800; line-height:1.1; letter-spacing:-.035em; }
.shop-student .gp-brand-title > span:first-child { color:#5D1916; }
.shop-student .gp-brand-title > span:last-child { color:#5D1F14; }
[data-theme=dark] .shop-student .gp-brand-title > span { color:#FDFBF7; }
.shop-student :is(.header,.gp-footer) .gp-brand-logo { width:44px; min-width:44px; max-width:44px; height:44px; max-height:44px; border-radius:0; overflow:visible; background:transparent; box-shadow:none; }
.shop-student :is(.header,.gp-footer) .gp-brand-logo img { width:100%; height:100%; object-fit:contain; }
@media(max-width:480px) {
 .shop-student .header .gp-brand-logo { width:36px; min-width:36px; max-width:36px; height:36px; max-height:36px; }
 .shop-student .header .gp-brand-title { font-size:19px; }
}

/* Compact brand spacing across GawangPinas websites. */
.shop-student :is(.header,.gp-footer) .gp-brand { gap:6px; }
.shop-student :is(.header,.gp-footer) .gp-brand-text { gap:1px; }

/* Slightly smaller website brand lockup. */
.shop-student :is(.header,.gp-footer) .gp-brand-logo { width:38px; min-width:38px; max-width:38px; height:38px; max-height:38px; }
.shop-student :is(.header,.gp-footer) .gp-brand-title { font-size:20px; }
@media(max-width:480px) { .shop-student .header .gp-brand-logo { width:32px; min-width:32px; max-width:32px; height:32px; max-height:32px; } .shop-student .header .gp-brand-title { font-size:18px; } }

/* Native-material dark mode: warm wood surfaces and bamboo actions. */
[data-theme=dark]{--primary:#F0CB5B;--primary-dark:#DDB646;--primary-deep:#F0CB5B;--primary-hover:#DDB646;--primary-active:#DDB646;--primary-soft:#493329;--primary-border:#BA8C63;--subsite-accent:#F0CB5B;--sky:#F0CB5B;--gp-primary:#F0CB5B;--gp-primary-hover:#DDB646;--gp-primary-active:#DDB646;--gp-primary-border:#BA8C63;--gp-border-focus:#F0CB5B;--gp-caret-color:#F0CB5B;--gp-selection-bg:#6C3603;--gp-selection-text:#FDFBF7;--gp-footer-bg:#1E1714;--gp-footer-text:#D7C9BC;--gp-footer-link:#D7C9BC;--gp-text-inverse:#1E1714;--color-primary:#F0CB5B;--color-primary-hover:#DDB646;--color-primary-active:#DDB646}
[data-theme=dark] body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary),[data-theme=dark] .shop-student .search-btn{background:#F0CB5B;border-color:#F0CB5B;color:#1E1714!important}
[data-theme=dark] body :is(.btn-primary,.btn--primary,.gwp-btn-primary,.gp-btn--primary):hover:not(:disabled),[data-theme=dark] .shop-student .search-btn:hover{background:#DDB646;border-color:#DDB646;color:#1E1714!important}
[data-theme=dark] .shop-student .product-price{color:#F0CB5B}

/* Shared desktop header geometry across home, catalog, account, and checkout. */
@media(min-width:769px){.shop-student .search-container{flex:1}.shop-student .search-form{min-height:48px}}
