:root{--white:#FFFEFC;--pale:#EDF3E9;--sage:#C9D9C4;--cream:#F5EBDD;--gold:#C9AA70;--peach:#F4C2B3;--green:#45604B;--ink:#28382e;--muted:#68776a}*{box-sizing:border-box}body{margin:0;background:var(--white);color:var(--ink);font-family:Tahoma,Arial,sans-serif;font-size:14px}button,input,textarea,select{font:inherit}button{cursor:pointer;background:var(--green);border:1px solid var(--green);color:white;padding:13px 20px;border-radius:14px}button:disabled{opacity:.55;cursor:wait}button.secondary,button.outline{background:white;color:var(--green);border:1px solid var(--sage)}a{color:inherit}.top{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:17px max(24px,5vw);background:#fff;border-bottom:1px solid #e7e8e0}.logo{font:36px Georgia,serif;letter-spacing:4px;text-decoration:none;color:var(--green);direction:ltr}.top span{color:var(--muted)}main{width:min(1260px,calc(100% - 28px));margin:30px auto 80px}.card{border:1px solid #e4e8df;box-shadow:0 10px 28px #29422f0b;padding:26px;background:white;border-radius:25px}.auth{max-width:500px;margin:9vh auto}.auth h1{font-size:27px;margin:12px 0}.auth p,.hint,.welcome p{line-height:2;color:var(--muted)}.eyebrow{font:11px Georgia,serif;letter-spacing:2px;color:var(--gold);direction:ltr;text-align:right}form{display:flex;flex-direction:column;gap:14px;margin-top:18px}label{display:flex;flex-direction:column;gap:8px;color:var(--ink);font-size:13px}input,select,textarea{width:100%;border:1px solid #dce3d9;border-radius:12px;padding:12px 13px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid var(--sage);outline-offset:2px}textarea{resize:vertical}select[multiple]{min-height:210px}select[multiple] option{padding:9px}details{margin-top:22px;border-top:1px solid #e3e8df;padding-top:17px}summary{cursor:pointer;color:var(--green)}.welcome{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.welcome h1{font-size:29px;font-weight:500}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:25px 0}.stat{background:var(--pale);padding:22px;border-radius:20px;display:flex;gap:8px;flex-direction:column}.stat b{color:var(--green);font-size:26px}.stat span{font-size:12px;color:var(--muted)}.columns{display:grid;grid-template-columns:1fr 1.12fr;gap:22px;align-items:start}.card h2{font-size:21px;font-weight:500;margin:0 0 12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}.products{display:flex;flex-direction:column;gap:13px}.product{padding:14px;background:#fcfdfb;border:1px solid #e4e9e1;border-radius:16px}.product-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.product h3{font-size:14px;line-height:1.8;margin:0}.product small{color:var(--muted)}.status{font-size:11px;background:var(--pale);padding:6px 10px;border-radius:99px}.edit-form{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:8px}.edit-form button{padding:12px}.upload{background:var(--pale);padding:18px;border-radius:15px;margin-top:25px}.listhead{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.imgcount{display:block;margin-top:7px}#message{position:fixed;bottom:25px;right:20px;max-width:calc(100vw - 40px);padding:13px 18px;background:var(--green);color:white;border-radius:12px;box-shadow:0 8px 24px #334b3833;opacity:0;pointer-events:none;transition:.2s}#message.show{opacity:1}@media(max-width:800px){.columns{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.card{padding:19px}.top .logo{font-size:28px}.edit-form{grid-template-columns:1fr 1fr}.edit-form button{grid-column:span 2}.welcome h1{font-size:24px}}

/* AVIEN product image gallery — responsive, touch friendly, no fixed number of image slots. */
.media-selection{border:1px solid #c9d9c4;background:#f8fbf6;border-radius:17px;padding:16px;margin-top:10px}
.media-selection h3,.product-media-manager h3{font-size:17px;font-weight:600;margin:0 0 8px}
.photo-picker{display:block;margin:12px 0;border:2px dashed #8cab97;background:#fff;border-radius:15px;padding:14px;color:#45604b;font-weight:600;cursor:pointer}
.photo-picker input{margin-top:10px;padding:10px;max-width:100%;font-size:13px}
.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:12px;margin:12px 0}
.media-tile{border:1px solid #e2e9e0;border-radius:15px;background:white;padding:8px;display:flex;flex-direction:column;gap:8px;min-width:0;position:relative}
.media-tile.is-cover{outline:2px solid #45604b;border-color:#45604b}
.media-tile img{width:100%;height:122px;object-fit:cover;border-radius:9px;background:#edf3e9}
.media-tile .media-caption{font-size:12px;overflow-wrap:anywhere;line-height:1.5;min-height:17px}
.media-tile .media-cover-label{background:#45604b;color:white;font-size:11px;border-radius:99px;padding:4px 9px;align-self:flex-start}
.media-tile label{display:flex;flex-direction:row;align-items:center;gap:5px;font-size:12px}
.media-tile input[type=radio]{width:auto;margin:0;accent-color:#45604b}
.media-actions{display:flex;flex-wrap:wrap;gap:5px}
.media-actions button{font-size:11px;padding:7px 9px;border-radius:9px;flex:1 1 auto}
.media-status{font-size:12px;line-height:1.9;color:#45604b;margin-top:9px;min-height:20px;white-space:pre-wrap}
.media-status.error{color:#a42d2d}
.media-grid:empty{display:none}
progress{width:100%;height:12px;accent-color:#45604b;margin:8px 0}
.product-media-manager{background:#edf3e9;margin-top:18px}
.product-media-manager .media-grid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr))}
#message{z-index:200}
@media(max-width:540px){.media-selection,.product-media-manager{padding:12px}.media-grid,.product-media-manager .media-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.media-tile{padding:6px}.media-tile img{height:116px}.photo-picker{padding:12px}}
