/* BladesBarn seller portal. All rules are scoped to #adminModal. */
#adminModal{--s-bg:#090b0c;--s-panel:#101314;--s-raised:#181b1c;--s-line:#292e30;--s-text:#f4f3f0;--s-muted:#a9adaf;--s-gold:#d9aa67;position:fixed;inset:0;z-index:40;display:none;background:var(--s-bg);color:var(--s-text);font:14px 'DM Sans',sans-serif;color-scheme:dark}
body:has(#adminModal.open){overflow:hidden}
#adminModal.open{display:block}
#adminModal [hidden]{display:none!important}
#adminModal *{box-sizing:border-box}
#adminModal button,#adminModal input,#adminModal select,#adminModal textarea{font:inherit}
#adminModal button{cursor:pointer}
#adminModal .portal-shell{height:100vh;display:grid;grid-template-columns:255px minmax(0,1fr)}
#adminModal .portal-sidebar{min-height:0;display:flex;flex-direction:column;background:#0d1011;border-right:1px solid #303436;padding:18px 13px 22px;overflow:auto}
#adminModal .portal-brand{text-align:center;padding:0 4px 29px}
#adminModal .portal-brand-mark{font-size:39px;line-height:1;color:var(--s-gold);height:48px}
#adminModal .portal-brand-name{font:600 25px 'Playfair Display',serif;font-variant:small-caps;letter-spacing:.025em;line-height:1.1}
#adminModal .portal-brand-name span{color:var(--s-gold)}
#adminModal .portal-brand small{display:block;margin-top:7px;color:#d2be9f;font-size:10px;letter-spacing:.22em}
#adminModal .portal-navigation{display:grid;align-content:start;gap:3px;text-transform:none;letter-spacing:0;font-size:14px}
#adminModal .portal-nav{display:flex;align-items:center;gap:17px;width:100%;min-height:47px;background:transparent;border:0;border-left:3px solid transparent;border-radius:0 7px 7px 0;color:#d5d7d6;text-align:left;padding:0 20px;font-size:14px}
#adminModal .portal-nav span{width:23px;color:#bfc2c1;font-size:24px;font-weight:400;text-align:center;line-height:1}
#adminModal .portal-nav:hover{background:#202325;color:#fff}
#adminModal .portal-nav.active{background:linear-gradient(90deg,#3c3020,#30291f);color:#ffe0aa;border-left-color:var(--s-gold)}
#adminModal .portal-nav.active span{color:var(--s-gold)}
#adminModal .portal-sidebar-bottom{margin-top:auto;display:grid;gap:16px;padding:20px 5px 0}
#adminModal .portal-shop-card{display:flex;gap:10px;align-items:center;border:1px solid #242a2b;border-radius:9px;padding:11px;background:#111516}
#adminModal .portal-shop-image{width:53px;height:53px;flex:0 0 53px;border-radius:5px;background:url('assets/hero-axe.png') center/cover}
#adminModal .portal-shop-card small{display:block;color:var(--s-gold);font-size:11px}
#adminModal .portal-shop-card strong{display:block;font-size:11px;margin:4px 0}
#adminModal .portal-shop-card button{border:0;background:none;color:var(--s-gold);font-size:11px;padding:0}
#adminModal .portal-help{border-radius:9px;background:#1b1f20;padding:17px;font-size:12px}
#adminModal .portal-help small{display:block;color:var(--s-muted);margin-top:6px;font-size:11px}
#adminModal .portal-main{min-width:0;min-height:0;height:100vh;overflow:hidden;display:grid;grid-template-rows:70px minmax(0,1fr)}
#adminModal .portal-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#0e1112;border-bottom:1px solid #262a2c;padding:0 22px}
#adminModal #portalMenuBtn{display:none}
#adminModal #portalNavBackdrop{display:none}
#adminModal .portal-global-search{display:flex;align-items:center;gap:10px;width:min(455px,55%);height:43px;border:1px solid #292e30;border-radius:8px;background:#171b1d;padding:0 14px;color:#e5e8e8}
#adminModal .portal-global-search span{font-size:26px;line-height:1}
#adminModal .portal-global-search input,#adminModal .portal-list-search input{border:0;outline:0;background:none;color:var(--s-text);min-width:0;width:100%;font-size:13px}
#adminModal input::placeholder,#adminModal textarea::placeholder{color:#878c8e}
#adminModal .portal-user{display:flex;align-items:center;gap:13px;color:#f0f0ed;font-size:13px}
#adminModal .portal-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#7b6342;font-family:'Playfair Display',serif;font-size:19px}
#adminModal .portal-close{border:0;background:none;color:#d5d5d1;font-size:27px;line-height:1;margin-left:15px}
#adminModal .portal-scroll{min-width:0;min-height:0;height:calc(100vh - 70px);overflow-y:auto;overflow-x:hidden;padding:0 20px 30px}
#adminModal #adminNotice{position:sticky;top:0;z-index:5}
#adminModal .notice{background:#293629;border:1px solid #4b6748;color:#d8edcf;padding:10px 14px;margin:9px 0;border-radius:6px}
#adminModal .portal-hero{margin:0 -20px;padding:34px 28px 26px;min-height:130px;background:linear-gradient(90deg,rgba(9,11,12,.96),rgba(9,11,12,.78) 51%,rgba(9,11,12,.25)),url('assets/chef-knife.png') right 40%/cover}
#adminModal .portal-hero h1{font:600 clamp(28px,3vw,38px) 'Playfair Display',serif;line-height:1.12;max-width:none;margin:0 0 8px;color:#fff}
#adminModal .portal-hero p{color:#d3d4d2;margin:0;font-size:14px}
#adminModal .portal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:-1px}
#adminModal .portal-stat{min-height:118px;background:#131718;border:1px solid #262b2d;border-radius:10px;display:flex;gap:15px;padding:13px;align-items:flex-start;text-align:left;color:var(--s-text);width:100%}
#adminModal .portal-stat:hover,#adminModal .portal-stat:focus-visible{border-color:var(--s-gold);background:#1b2020}
#adminModal .portal-stat-icon{width:55px;height:55px;flex:0 0 55px;background:#252526;border-radius:9px;display:grid;place-items:center;color:var(--s-gold);font-size:30px}
#adminModal .portal-stat small{display:block;color:#ececea;font-size:13px;margin:3px 0 6px}
#adminModal .portal-stat strong{display:block;color:#fff;font-size:26px;line-height:1.05;font-weight:700}
#adminModal .portal-stat em{display:block;color:#8ba697;font-size:11px;font-style:normal;margin-top:10px}
#adminModal .portal-dashboard-content{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);gap:13px;margin-top:16px;align-items:start}
#adminModal .portal-overview-card{min-width:0;background:#111516;border:1px solid #292e30;border-radius:10px;padding:18px}
#adminModal .portal-recent{grid-row:span 2}
#adminModal .portal-overview-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
#adminModal .portal-overview-head h2{font:600 19px 'DM Sans',sans-serif;color:#fff;margin:0 0 4px}
#adminModal .portal-overview-head p{font-size:11px;color:#aeb4b1;margin:0}
#adminModal .portal-overview-head button{border:0;background:none;color:var(--s-gold);font-size:12px;white-space:nowrap;padding:4px 0}
#adminModal .portal-overview-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #272d2e;min-width:0}
#adminModal .portal-overview-row img{width:55px;height:48px;flex:0 0 55px;object-fit:cover;border-radius:5px;background:#252a2b}
#adminModal .portal-overview-row>div{min-width:0;flex:1}
#adminModal .portal-overview-row strong,#adminModal .portal-attention-row strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:#f3f3f0}
#adminModal .portal-overview-row small,#adminModal .portal-attention-row small{display:block;color:#aeb4b1;font-size:11px;margin-top:4px}
#adminModal .portal-overview-row button{border:1px solid #50595a;border-radius:5px;background:#1b2021;color:#eee;padding:8px 12px;font-size:11px}
#adminModal .portal-overview-row button:hover,#adminModal .portal-overview-head button:hover{color:#ffe0aa;border-color:var(--s-gold)}
#adminModal .portal-attention-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:54px;padding:10px 0;text-align:left;border:0;border-top:1px solid #272d2e;background:none}
#adminModal .portal-attention-row>span{min-width:0}
#adminModal .portal-attention-row em{font-style:normal;font-size:11px;color:#f0be79;white-space:nowrap}
#adminModal .portal-attention-row:hover strong{color:var(--s-gold)}
#adminModal .portal-overview-empty{color:#aeb4b1;font-size:12px;line-height:1.5;margin:0;padding:14px 0;border-top:1px solid #272d2e}
#adminModal .portal-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}
#adminModal .portal-quick-actions button{min-height:44px;border:1px solid #a17847;border-radius:6px;background:#33291d;color:#f6d7a6;font-size:11px;font-weight:700;padding:10px}
#adminModal .portal-quick-actions button:first-child{background:var(--s-gold);color:#17120c;border-color:#e9bb78}
#adminModal .portal-quick-actions button:hover{filter:brightness(1.15)}
#adminModal .portal-listings{margin-top:13px;border:1px solid #292e30;border-radius:11px;background:#101314;overflow:hidden}
#adminModal .portal-listings-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 13px 16px}
#adminModal .portal-listings-head h2{font:600 29px 'DM Sans',sans-serif;color:#fff;margin:0 0 4px}
#adminModal .portal-listings-head p{color:#bec1c0;margin:0;font-size:13px}
#adminModal .portal-gold-btn{border:1px solid #ecc181;background:var(--s-gold);color:#17120c;font-weight:700;border-radius:6px;padding:12px 17px;white-space:nowrap;font-size:13px}
#adminModal .portal-gold-btn:hover{background:#e9bd7c}
#adminModal .portal-listings-layout{display:grid;grid-template-columns:230px minmax(0,1fr);border-top:1px solid #24292b}
#adminModal .portal-filters{border-right:1px solid #24292b;padding:17px 15px}
#adminModal .portal-filters h3{font:600 14px 'DM Sans',sans-serif;margin:2px 0 14px;color:#fff}
#adminModal .portal-filters button{width:100%;display:flex;justify-content:space-between;align-items:center;border:1px solid transparent;border-radius:6px;background:none;color:#d7dad9;text-align:left;padding:9px 10px;font-size:12px}
#adminModal .portal-filters button.active{background:#3b3020;border-color:#80603c;color:#ffe6b9}
#adminModal .portal-filters button:hover{background:#242626}
#adminModal .portal-filters button span{min-width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:#272b2d;color:#d6d6d6;font-size:11px}
#adminModal .portal-filters hr{border:0;border-top:1px solid #252a2b;margin:20px 0}
#adminModal .portal-table-side{min-width:0;padding:0 14px 14px}
#adminModal .portal-table-toolbar{display:grid;grid-template-columns:minmax(150px,1fr) repeat(3,minmax(110px,145px));gap:9px;padding:0 0 12px}
#adminModal .portal-list-search,#adminModal .portal-table-toolbar select{height:42px;min-width:0;background:#1b1f20;border:1px solid #363e40;border-radius:6px;color:#e8e9e8;padding:0 12px;font-size:12px}
#adminModal .portal-list-search{display:flex;gap:7px;align-items:center;font-size:22px}
#adminModal .portal-table-toolbar select{width:100%;appearance:auto}
#adminModal .portal-table-wrap{overflow-x:auto;border:1px solid #252b2c;border-radius:8px}
#adminModal .portal-table{border-collapse:collapse;width:100%;min-width:660px;font-size:12px}
#adminModal .portal-table th{text-align:left;font-weight:500;color:#f2f2f0;background:#1a1e1f;padding:11px 9px}
#adminModal .portal-table td{padding:7px 9px;border-top:1px solid #252a2b;color:#f0f0ee;vertical-align:middle}
#adminModal .portal-table tr.selected td{background:#25231d}
#adminModal .portal-table th:first-child,#adminModal .portal-table td:first-child{width:36px;text-align:center}
#adminModal .portal-table input[type=checkbox]{accent-color:var(--s-gold);width:17px;height:17px;margin:0}
#adminModal .portal-product{display:flex;align-items:center;gap:10px;min-width:180px}
#adminModal .portal-product img{width:64px;height:52px;object-fit:cover;border-radius:6px;background:#252a2b}
#adminModal .portal-product strong{display:block;color:#fff;font-weight:700;line-height:1.3}
#adminModal .portal-product small{display:block;color:#b6b8b7;margin-top:3px;font-size:11px}
#adminModal .portal-status{display:inline-block;border-radius:6px;padding:6px 10px;background:#292e30;color:#e6e6e4;white-space:nowrap}
#adminModal .portal-status.active{background:#173d2b;color:#a6f0bd}
#adminModal .portal-status.sold-out{background:#592525;color:#ffd1ca}
#adminModal .portal-status.draft{background:#2d3032;color:#e1e1df}
#adminModal .portal-row-actions{display:flex;gap:7px}
#adminModal .portal-row-actions button{border:1px solid #4b5355;border-radius:6px;color:#f5f5f2;background:#181b1d;padding:8px 13px;min-width:52px}
#adminModal .portal-row-actions button:last-child{min-width:36px;font-size:20px;padding:1px 6px;line-height:1}
#adminModal .portal-row-actions button:hover{border-color:var(--s-gold);color:var(--s-gold)}
#adminModal .portal-action-menu{position:fixed;z-index:80;min-width:172px;background:#202526;border:1px solid #555d5e;border-radius:7px;padding:5px;box-shadow:0 16px 34px #0009}
#adminModal .portal-action-menu button{display:block;width:100%;border:0;border-radius:4px;background:transparent;color:#f4f3f0;text-align:left;padding:10px 11px;font-size:12px}
#adminModal .portal-action-menu button:hover,#adminModal .portal-action-menu button:focus-visible{background:#3b3020;color:#ffe3b8}
#adminModal .portal-action-menu button.danger{color:#ffb5ac}
#adminModal .portal-empty{padding:46px 12px;text-align:center;color:#aab0af}
#adminModal .portal-pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:11px;font-size:12px;color:#d9dbd9}
#adminModal .portal-pagination div{display:flex;align-items:center;gap:7px}
#adminModal .portal-pagination button,#adminModal .portal-pagination select,#adminModal #listingPage{border:1px solid #454b4d;border-radius:5px;background:#171b1d;color:#f3f3f1;padding:7px 12px}
#adminModal .portal-pagination button:disabled{opacity:.4;cursor:default}
#adminModal .portal-pagination select{margin-left:9px}
#adminModal .portal-placeholder{min-height:65vh;padding:65px 30px;max-width:720px}
#adminModal .portal-placeholder h2{font:600 38px 'Playfair Display',serif;margin:12px 0}
#adminModal .portal-placeholder p{color:#aeb3b1;line-height:1.7;margin-bottom:25px}
#adminModal .portal-editor-page{max-width:1120px;margin:0 auto;padding:30px 10px 45px}
#adminModal .portal-editor-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:25px}
#adminModal #editorBackTop{display:block;border:0;background:none;color:var(--s-gold);padding:0 0 18px;font-size:12px}
#adminModal .seller-eyebrow{display:block;color:var(--s-gold);font-size:10px;letter-spacing:.18em;font-weight:700}
#adminModal #studioTitle{font:600 34px 'Playfair Display',serif;margin:6px 0 5px;color:#fff}
#adminModal .portal-editor-heading p{color:#adb2b0;margin:0;font-size:13px}
#adminModal .seller-status{background:#342d20;border:1px solid #665338;color:#f6d6a0;border-radius:30px;padding:8px 13px;font-size:11px}
#adminModal #productForm{display:block;background:#111516;border:1px solid #2b3032;border-radius:11px;overflow:clip}
#adminModal .seller-workspace{display:grid;grid-template-columns:190px minmax(0,1fr)}
#adminModal .seller-sidebar{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 102px);overflow-y:auto;background:#15191a;border-right:1px solid #2d3334;padding:23px 13px;display:flex;flex-direction:column;gap:4px}
#adminModal .seller-sidebar-title{font-size:10px;letter-spacing:.18em;color:#b9996c;margin:0 10px 16px}
#adminModal .seller-nav{display:flex;gap:14px;align-items:center;text-align:left;border:0;border-radius:6px;background:none;color:#b9bfbc;padding:12px 10px;font-size:11px}
#adminModal .seller-nav span{font-size:13px}
#adminModal .seller-nav.active,#adminModal .seller-nav:hover{color:#ffe0aa;background:#322a20}
#adminModal .seller-sidebar-note{margin-top:auto;border-top:1px solid #303537;padding:15px 10px;color:#aeb4b1;font-size:11px;line-height:1.6}
#adminModal .seller-sidebar-note strong{display:block;color:var(--s-gold);font-family:'Playfair Display',serif;font-size:15px}
#adminModal .seller-editor{min-width:0;padding:26px 28px 30px}
#adminModal .seller-editor-head{border-bottom:1px solid #313638;padding-bottom:18px;margin-bottom:20px;display:flex;justify-content:space-between;gap:15px}
#adminModal .seller-editor-head h3{font:600 25px 'Playfair Display',serif;margin:6px 0;color:#fff}
#adminModal .seller-editor-head p{margin:0;color:#aab0ad;font-size:12px}
#adminModal .seller-editor-head .seller-status{display:none}
#adminModal .listing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}
#adminModal .listing-grid .wide{grid-column:1/-1}
#adminModal .field{min-width:0;margin:0;display:block}
#adminModal .field label{display:block;color:#c4c6c3;font-size:11px;letter-spacing:.09em;text-transform:uppercase;margin:0 0 7px}
#adminModal .field input:not([type=file]):not([type=hidden]),#adminModal .field select,#adminModal .field textarea{width:100%;background:#1c2122;border:1px solid #424849;border-radius:6px;color:#f6f5f2;padding:12px 13px;outline:0}
#adminModal .field input:focus,#adminModal .field select:focus,#adminModal .field textarea:focus{border-color:var(--s-gold);box-shadow:0 0 0 2px rgba(217,170,103,.12)}
#adminModal .field textarea{min-height:140px;resize:vertical}
#adminModal .listing-help{color:#a5aaa7;font-size:11px;line-height:1.5;margin-top:7px}
#adminModal .tag-editor{display:flex;align-items:center;flex-wrap:wrap;gap:8px;background:#1c2122;border:1px solid #424849;border-radius:6px;padding:9px}
#adminModal .tag-editor:focus-within{border-color:var(--s-gold)}
#adminModal .tag-chips{display:flex;flex-wrap:wrap;gap:6px;width:100%}
#adminModal .tag-chips:empty{display:none}
#adminModal .tag-chip{display:inline-flex;align-items:center;gap:6px;background:#3b3020;border:1px solid #80603c;color:#ffe3b8;border-radius:5px;padding:5px 7px;font-size:12px}
#adminModal .tag-chip button{border:0;background:none;color:inherit;font-size:18px;line-height:1;padding:0 1px}
#adminModal .tag-editor #tagEntry{flex:1 1 200px;width:auto;min-width:160px;background:transparent;border:0;padding:5px;box-shadow:none}
#adminModal .tag-editor #addTagBtn{border:1px solid #80603c;background:#322a20;color:#ffe3b8;border-radius:5px;padding:8px 11px;font-size:12px}
#adminModal .category-field{display:flex;gap:8px}
#adminModal .category-field select{flex:1}
#adminModal .category-field button{min-width:45px;border:1px solid #61543e;border-radius:6px;background:#30291e;color:var(--s-gold);font-size:21px}
#adminModal .variation-box{border:1px solid #343b3d;border-radius:7px;padding:16px;background:#171b1c}
#adminModal .variation-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;margin-bottom:12px}
#adminModal .variation-name-head strong,#adminModal .variation-options-head strong{display:block;font-size:11px;margin-bottom:7px;color:#c7c9c6}
#adminModal .variation-add-btn,#adminModal .removeVariationBtn{border:1px solid #61543e;background:#26231e;color:var(--s-gold);border-radius:5px;padding:9px 11px;margin-top:7px}
#adminModal .seo-preview-card{margin-top:16px;background:#1e2324;border:1px solid #3a4244;border-radius:7px;padding:16px}
#adminModal .seo-preview-label{font-size:10px;letter-spacing:.15em;color:#b7bcba}
#adminModal .seo-preview-url{color:#9bbca2;margin-top:12px;font-size:11px}
#adminModal .seo-preview-title{color:#d9ad78;font-size:17px;margin:5px 0}
#adminModal .seo-preview-description{color:#bcc0bd;font-size:12px}
#adminModal .media-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:10px 0}
#adminModal .media-slot{height:150px;min-height:150px;position:relative;overflow:hidden;border:1px dashed #6a7070;border-radius:7px;background:#1b2021;display:grid;place-items:center}
#adminModal .media-slot:first-child{border-color:var(--s-gold)}
#adminModal .media-slot input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:2}
#adminModal .media-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;cursor:pointer}
#adminModal .media-slot .slot-label{color:#bfc3c1;font-size:11px;text-align:center;white-space:pre-line;padding:10px;pointer-events:none}
#adminModal .media-slot.has-media .slot-label{display:none}
#adminModal .media-slot .remove-media{position:absolute;top:5px;right:5px;z-index:4;display:block;border:0;border-radius:50%;background:#141819;color:#fff;width:26px;height:26px}
#adminModal .media-slot .replace-media{position:absolute;top:5px;left:5px;z-index:4;border:1px solid #8e754f;border-radius:4px;background:#191b1b;color:#f5deb9;padding:5px 6px;font-size:10px}
#adminModal .media-slot .media-rating{position:absolute;bottom:5px;left:5px;z-index:4;width:calc(100% - 10px);padding:5px;font-size:10px}
#adminModal .media-preview{min-height:180px;display:grid;place-items:center;background:#1a1e1f;border:1px solid #343b3d;border-radius:7px;color:#b9bdbb;margin-top:13px;overflow:hidden}
#adminModal .media-preview img{max-width:100%;max-height:370px;object-fit:contain}
#adminModal .media-preview-content{display:grid;justify-items:center;gap:10px;padding:12px;color:#d4d6d4;font-size:12px}
#adminModal .video-upload{border:1px dashed #535b5d;border-radius:7px;background:#1b2021;padding:18px}
#adminModal .video-upload input{max-width:100%;color:#d8dad8}
#adminModal .seller-video-preview:not(:empty){display:grid;gap:10px;margin-top:12px}
#adminModal .seller-video-preview video{display:block;max-width:100%;max-height:240px;border-radius:6px;background:#0b0d0e}
#adminModal .seller-video-preview span{font-size:11px;color:#d8dad8;overflow-wrap:anywhere}
#adminModal .seller-video-preview button{justify-self:start;border:1px solid #6b4c43;border-radius:5px;background:#342522;color:#ffc7bd;padding:8px 10px;font-size:11px}
#adminModal .listing-actions{position:sticky;bottom:0;background:#171b1c;border-top:1px solid #343a3c;padding:15px 20px;margin:0;z-index:3}
#adminModal .form-actions{display:flex;flex-wrap:wrap;gap:9px;margin:0}
#adminModal .form-actions button{margin:0;border-radius:5px;padding:11px 15px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
#adminModal .form-actions .btn{background:var(--s-gold);color:#17120b;border-color:var(--s-gold)}
#adminModal .form-actions .mini{border:1px solid #62696a;background:#202526;color:#f3f3f1}
#adminModal .form-actions button:hover{filter:brightness(1.14)}
@media(max-width:1200px){#adminModal .portal-stats{grid-template-columns:repeat(2,minmax(0,1fr))}#adminModal .portal-table-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){#adminModal .portal-shell{grid-template-columns:200px minmax(0,1fr)}#adminModal .portal-listings-layout{grid-template-columns:1fr}#adminModal .portal-filters{border-right:0;border-bottom:1px solid #252b2c}#adminModal #portalStatusLinks,#adminModal #portalCategoryLinks{display:flex;flex-wrap:wrap;gap:4px}#adminModal .portal-filters button{width:auto;gap:10px}#adminModal .portal-filters hr{margin:10px 0}#adminModal .portal-table-toolbar{padding-top:12px}#adminModal .media-grid{grid-template-columns:repeat(3,minmax(0,1fr))}#adminModal .portal-dashboard-content{grid-template-columns:1fr}#adminModal .portal-recent{grid-row:auto}}
@media(max-width:900px){#adminModal .seller-workspace{display:block}#adminModal .seller-sidebar{position:static;max-height:none;overflow-x:auto;overflow-y:hidden;flex-direction:row;gap:4px;padding:10px}#adminModal .seller-sidebar-title,#adminModal .seller-sidebar-note{display:none}#adminModal .seller-nav{min-width:max-content;min-height:44px}}
@media(max-width:650px){
  #adminModal .portal-shell{display:block;height:100vh;overflow:hidden}
  #adminModal .portal-sidebar{position:fixed;inset:0 auto 0 0;width:min(290px,84vw);height:100vh;z-index:51;padding:18px 13px 22px;overflow-y:auto;border-right:1px solid #303638;transform:translateX(-100%);transition:transform .2s ease}
  #adminModal.mobile-nav-open .portal-sidebar{transform:translateX(0)}
  #adminModal #portalNavBackdrop:not([hidden]){display:block;position:fixed;inset:0;z-index:50;background:#0009}
  #adminModal #portalMenuBtn{display:grid;place-items:center;flex:0 0 42px;height:42px;border:1px solid #454b4d;border-radius:6px;background:#171b1d;color:var(--s-gold);font-size:21px}
  #adminModal .portal-navigation{display:grid;gap:3px}
  #adminModal .portal-main{display:grid;height:100vh;grid-template-rows:57px minmax(0,1fr)}
  #adminModal .portal-topbar{height:57px;padding:0 10px;gap:9px}
  #adminModal .portal-global-search{flex:1;width:auto;min-width:0;height:40px}
  #adminModal .portal-user{gap:6px}
  #adminModal #portalUserName{display:none}
  #adminModal .portal-avatar{width:32px;height:32px}
  #adminModal .portal-close{margin-left:0;min-width:36px;min-height:42px}
  #adminModal .portal-scroll{height:calc(100vh - 57px);padding:0 11px 20px}
  #adminModal .portal-hero{margin:0 -11px;padding:25px 17px}
  #adminModal .portal-hero h1{font-size:26px}
  #adminModal .portal-stats{gap:9px;margin-top:12px}
  #adminModal .portal-stat{min-height:95px;padding:10px;gap:9px}
  #adminModal .portal-stat-icon{width:40px;height:40px;flex-basis:40px;font-size:22px}
  #adminModal .portal-stat small{font-size:11px}
  #adminModal .portal-stat strong{font-size:20px}
  #adminModal .portal-stat em{font-size:10px;margin-top:5px}
  #adminModal .portal-listings-head{align-items:flex-start}
  #adminModal .portal-listings-head h2{font-size:23px}
  #adminModal .portal-listings-head p{font-size:11px}
  #adminModal .portal-gold-btn{min-height:44px;padding:10px;font-size:11px}
  #adminModal .portal-table-toolbar select,#adminModal .portal-list-search{min-height:44px}
  #adminModal .portal-row-actions button{min-height:42px}
  #adminModal .portal-editor-page{padding:20px 0}
  #adminModal .seller-nav{padding:9px;font-size:10px;gap:5px}
  #adminModal .seller-nav span{font-size:11px}
  #adminModal .seller-editor{padding:18px 13px}
  #adminModal .listing-grid{grid-template-columns:1fr}
  #adminModal .listing-grid .wide{grid-column:auto}
  #adminModal .variation-row{grid-template-columns:1fr}
  #adminModal .field input:not([type=file]):not([type=hidden]),#adminModal .field select{min-height:44px}
  #adminModal .form-actions button{min-height:44px}
  #adminModal .media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  #adminModal .media-slot{height:130px;min-height:130px}
}
@media(max-width:450px){#adminModal .portal-stats{grid-template-columns:1fr}#adminModal .portal-listings-head{display:block}#adminModal #newListingBtn{margin-top:13px}#adminModal .portal-table-toolbar{grid-template-columns:1fr 1fr}#adminModal .portal-list-search{grid-column:1/-1}#adminModal .portal-pagination{align-items:flex-start;flex-direction:column}#adminModal .portal-pagination div{flex-wrap:wrap}#adminModal .portal-editor-heading{align-items:flex-start}#adminModal #studioTitle{font-size:27px}}

/* ===== Premium Listing Media Gallery ===== */
#adminModal .media-grid{
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  grid-auto-rows:150px;
  gap:12px !important;
  align-items:stretch;
}

#adminModal .media-slot{
  position:relative;
  width:100% !important;
  min-width:0 !important;
  height:auto !important;
  min-height:150px !important;
  box-sizing:border-box;
  overflow:hidden !important;
  isolation:isolate;
  border:1px dashed #59605f;
  border-radius:10px;
  background:#181d1e;
}

/* Photo 1 = large storefront cover */
#adminModal .media-slot.main-media-slot{
  grid-column:span 2;
  grid-row:span 2;
  border:1px solid rgba(226,187,126,.7);
  background:linear-gradient(145deg,#1c2222,#151919);
  box-shadow:inset 0 0 0 1px rgba(226,187,126,.06);
}

/* Keep every uploaded image strictly inside its box */
#adminModal .media-slot img{
  position:absolute !important;
  inset:0 !important;
  display:block;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:0 !important;
  max-height:100% !important;
  object-fit:cover !important;
  object-position:center !important;
  border-radius:inherit;
  z-index:1;
}

/* Empty slot */
#adminModal .media-slot .slot-label{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:18px;
  color:#c3c8c6;
  text-align:center;
  pointer-events:none;
  z-index:1;
}

#adminModal .media-slot .slot-label strong{
  font-size:25px;
  line-height:1;
  color:#e2bb7e;
  font-weight:400;
}

#adminModal .media-slot .slot-label small{
  color:#7f8986;
  font-size:10px;
}

/* Main photo label */
#adminModal .main-photo-badge{
  position:absolute;
  top:8px;
  left:50%;
  transform:translateX(-50%);
  z-index:6;
  padding:5px 9px;
  border:1px solid rgba(226,187,126,.5);
  border-radius:20px;
  background:rgba(17,21,20,.88);
  color:#e8c58c;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  white-space:nowrap;
  pointer-events:none;
  backdrop-filter:blur(5px);
}

/* Small photo number */
#adminModal .photo-number{
  position:absolute;
  top:7px;
  left:8px;
  z-index:3;
  color:#89918f;
  font-size:8px;
  font-weight:700;
  letter-spacing:.1em;
  pointer-events:none;
}

#adminModal .media-slot.has-media .photo-number{
  display:none;
}

/* Drag hint */
#adminModal .media-drag-hint{
  position:absolute;
  left:50%;
  bottom:39px;
  transform:translateX(-50%);
  z-index:5;
  padding:4px 7px;
  border-radius:5px;
  background:rgba(14,17,17,.78);
  color:#e4e7e5;
  font-size:9px;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:opacity .18s ease;
}

#adminModal .media-slot.has-media:hover .media-drag-hint{
  opacity:1;
}

#adminModal .media-slot.has-media{
  cursor:grab;
  border-style:solid;
}

#adminModal .media-slot.has-media:active{
  cursor:grabbing;
}

#adminModal .media-slot.is-dragging{
  opacity:.42;
  transform:scale(.98);
}

#adminModal .media-slot.drag-over{
  border:2px solid #e2bb7e !important;
  box-shadow:0 0 0 3px rgba(226,187,126,.13),0 10px 28px rgba(0,0,0,.32);
}

/* Keep controls above photo */
#adminModal .media-slot .replace-media,
#adminModal .media-slot .remove-media,
#adminModal .media-slot .media-rating{
  z-index:7 !important;
}

@media(max-width:900px){
  #adminModal .media-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:650px){
  #adminModal .media-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-auto-rows:130px;
  }

  #adminModal .media-slot{
    min-height:130px !important;
  }

  #adminModal .media-slot.main-media-slot{
    grid-column:1 / -1;
    grid-row:span 2;
  }
}

/* Seller action button click / saving feedback */
#adminModal .listing-actions button{
  transition:background .15s ease,color .15s ease,border-color .15s ease,transform .1s ease,box-shadow .15s ease;
}

#adminModal .listing-actions button:active,
#adminModal .listing-actions button.is-pressed{
  transform:translateY(1px) scale(.98);
  background:#e2bb7e !important;
  border-color:#e2bb7e !important;
  color:#111514 !important;
  box-shadow:0 0 0 3px rgba(226,187,126,.16) !important;
}

#adminModal .listing-actions button.is-saving{
  background:#e2bb7e !important;
  border-color:#e2bb7e !important;
  color:#111514 !important;
  opacity:1 !important;
  cursor:wait !important;
}

#adminModal .notice-error{
  border:1px solid rgba(232,88,88,.65) !important;
  background:rgba(115,25,25,.24) !important;
  color:#ffb1b1 !important;
}

#adminModal .notice-success{
  border:1px solid rgba(88,190,125,.55) !important;
  background:rgba(26,100,55,.22) !important;
  color:#a9e8bd !important;
}

/* Required field validation */
#adminModal .field .field-error{
  border-color:#e85b5b !important;
  box-shadow:0 0 0 2px rgba(232,91,91,.13) !important;
  background-color:rgba(105,28,28,.12) !important;
}

#adminModal .field-error-message{
  display:block;
  margin-top:6px;
  color:#ff8f8f;
  font-size:11px;
  font-weight:600;
  line-height:1.35;
}

#adminModal .field.has-error label{
  color:#ff9b9b;
}
