:root {
    --a-green: #173f2c;
    --a-green-dark: #0e291d;
    --a-lime: #c5e875;
    --a-bg: #f2f4ef;
    --a-paper: #fff;
    --a-ink: #17231c;
    --a-muted: #758078;
    --a-line: #e2e7e1;
    --a-red: #b94a3a;
    --a-orange: #d7783d;
    --a-blue: #3b6c8e;
    --a-shadow: 0 18px 55px rgba(20,48,31,.08);
    --a-radius: 18px;
    --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --serif: Iowan Old Style, Baskerville, "Times New Roman", serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--a-ink); background: var(--a-bg); font-family: var(--sans); font-size: 14px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
a { color: inherit; text-decoration: none; }
button,input,textarea,select { font: inherit; }
button { color: inherit; }
img { display: block; max-width: 100%; }
h1,h2,h3,p { margin-top: 0; }
code { padding: 4px 7px; border-radius: 6px; background: #edf0eb; font-size: 11px; }
.admin-body { min-height: 100vh; }
.admin-app { display: grid; min-height: 100vh; grid-template-columns: 255px 1fr; }
.admin-sidebar { position: fixed; z-index: 80; top: 0; bottom: 0; left: 0; display: flex; width: 255px; flex-direction: column; overflow-y: auto; color: rgba(255,255,255,.68); background: var(--a-green-dark); }
.sidebar-top { display: flex; min-height: 88px; align-items: center; justify-content: space-between; padding: 20px 22px; border-bottom: 1px solid rgba(255,255,255,.1); }
.admin-brand { display: inline-flex; align-items: center; gap: 11px; width: fit-content; color: var(--a-green); }
.admin-brand > span { display: grid; width: 39px; height: 39px; place-items: center; color: var(--a-green); border-radius: 50% 50% 50% 12px; background: var(--a-lime); font-size: 18px; }
.admin-brand div { display: grid; line-height: 1; }
.admin-brand strong { font-family: var(--serif); font-size: 21px; letter-spacing: .14em; }
.admin-brand small { margin-top: 5px; color: var(--a-muted); font-size: 7px; font-weight: 850; letter-spacing: .24em; }
.admin-brand-light { color: #fff; }
.admin-brand-light small { color: rgba(255,255,255,.42); }
.sidebar-close { display: none; border: 0; color: #fff; background: transparent; font-size: 28px; }
.admin-nav { flex: 1; padding: 18px 13px; }
.admin-nav > p { margin: 23px 13px 8px; color: rgba(255,255,255,.3); font-size: 8px; font-weight: 850; letter-spacing: .18em; text-transform: uppercase; }
.admin-nav > p:first-child { margin-top: 6px; }
.admin-nav > a { display: flex; min-height: 43px; align-items: center; gap: 12px; margin: 3px 0; padding: 0 13px; border-radius: 10px; font-size: 12px; font-weight: 650; transition: color .2s,background .2s; }
.admin-nav > a:hover { color: #fff; background: rgba(255,255,255,.07); }
.admin-nav > a.active { color: var(--a-green-dark); background: var(--a-lime); }
.admin-nav > a > span { display: grid; width: 21px; place-items: center; font-size: 17px; }
.admin-nav > a > b { display: grid; min-width: 20px; height: 20px; margin-left: auto; place-items: center; padding: 0 5px; color: #fff; border-radius: 999px; background: #c95438; font-size: 9px; }
.admin-nav > a.active > b { color: #fff; background: var(--a-green); }
.sidebar-bottom { display: flex; align-items: center; gap: 11px; margin: 10px 13px 16px; padding: 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; }
.status-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--a-lime); box-shadow: 0 0 0 5px rgba(197,232,117,.09); }
.sidebar-bottom strong,.sidebar-bottom small { display: block; }
.sidebar-bottom strong { color: #fff; font-size: 10px; }
.sidebar-bottom small { color: rgba(255,255,255,.37); font-size: 8px; }
.admin-main { min-width: 0; grid-column: 2; }
.admin-topbar { position: sticky; z-index: 50; top: 0; display: flex; min-height: 88px; align-items: center; justify-content: space-between; padding: 13px 31px; border-bottom: 1px solid var(--a-line); background: rgba(255,255,255,.92); backdrop-filter: blur(15px); }
.admin-topbar > div:first-of-type p { margin: 0; color: var(--a-muted); font-size: 9px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.admin-topbar > div:first-of-type strong { font-family: var(--serif); font-size: 20px; font-weight: 500; }
.topbar-actions { display: flex; align-items: center; gap: 11px; }
.view-site { margin-right: 10px; color: var(--a-green); font-size: 10px; font-weight: 800; }
.admin-avatar { display: grid; width: 36px; height: 36px; place-items: center; color: var(--a-green); border-radius: 50%; background: var(--a-lime); font-family: var(--serif); font-size: 16px; }
.admin-identity strong,.admin-identity small { display: block; }
.admin-identity strong { font-size: 11px; }
.admin-identity small { color: var(--a-muted); font-size: 8px; text-transform: uppercase; }
.logout-button { display: grid; width: 35px; height: 35px; margin-left: 5px; place-items: center; border: 1px solid var(--a-line); border-radius: 9px; background: #fff; cursor: pointer; }
.sidebar-toggle { display: none; border: 0; background: transparent; font-size: 22px; }
.admin-content { max-width: 1500px; margin: 0 auto; padding: 34px; }

.admin-page-head { display: flex; align-items: end; justify-content: space-between; gap: 35px; margin-bottom: 30px; }
.admin-page-head h1 { margin-bottom: 4px; color: var(--a-green); font-family: var(--serif); font-size: 42px; font-weight: 500; letter-spacing: -.03em; line-height: 1.05; }
.admin-page-head > div > p:not(.admin-kicker) { margin: 0; color: var(--a-muted); font-size: 12px; }
.admin-page-head.compact h1 { font-size: 38px; }
.admin-kicker { margin-bottom: 8px; color: #6f9147; font-size: 8px; font-weight: 850; letter-spacing: .17em; text-transform: uppercase; }
.head-actions { display: flex; gap: 9px; }
.back-link { display: inline-block; margin-bottom: 12px; color: var(--a-muted); font-size: 10px; font-weight: 750; }
.admin-button { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 18px; padding: 0 17px; border: 1px solid transparent; border-radius: 10px; font-size: 11px; font-weight: 800; cursor: pointer; transition: transform .2s,background .2s,border .2s; }
.admin-button:hover { transform: translateY(-1px); }
.admin-button-primary { color: #fff; background: var(--a-green); }
.admin-button-primary:hover { background: var(--a-green-dark); }
.admin-button-secondary { color: var(--a-green); border-color: var(--a-line); background: #fff; }
.admin-button-secondary:hover { border-color: #aeb8b0; }
.admin-button-wide { width: 100%; }
.admin-card { border: 1px solid var(--a-line); border-radius: var(--a-radius); background: var(--a-paper); box-shadow: 0 8px 30px rgba(20,48,31,.025); }
.card-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 20px; }
.card-head h2 { margin: 0; color: var(--a-green); font-family: var(--serif); font-size: 23px; font-weight: 500; }
.card-head p { margin: 2px 0 0; color: var(--a-muted); font-size: 10px; }
.card-head > a { color: var(--a-green); font-size: 10px; font-weight: 800; }
.admin-alert { position: relative; margin-bottom: 22px; padding: 13px 42px 13px 16px; border: 1px solid; border-radius: 11px; font-size: 11px; font-weight: 650; }
.admin-alert button { position: absolute; top: 8px; right: 11px; border: 0; background: transparent; font-size: 20px; cursor: pointer; }
.admin-alert-success { color: #245f3b; border-color: #b8dbbf; background: #edf8ef; }
.admin-alert-error { color: #913b30; border-color: #e1b8b1; background: #fff0ed; }
.admin-alert-warning { color: #6f4a1b; border-color: #e6c493; background: #fff7e8; }

.stat-grid { display: grid; margin-bottom: 25px; grid-template-columns: repeat(4,1fr); gap: 15px; }
.stat-grid article { display: flex; align-items: center; gap: 15px; padding: 20px; border: 1px solid var(--a-line); border-radius: var(--a-radius); background: #fff; }
.stat-icon { display: grid; flex: 0 0 46px; height: 46px; place-items: center; border-radius: 13px; font-size: 21px; }
.stat-green { color: #23603c; background: #e7f2e9; }
.stat-lime { color: #547525; background: #eff7d9; }
.stat-orange { color: #a3542c; background: #fff0e5; }
.stat-blue { color: #346686; background: #e9f1f6; }
.stat-grid small,.stat-grid strong,.stat-grid p { display: block; margin: 0; }
.stat-grid small { color: var(--a-muted); font-size: 9px; font-weight: 750; }
.stat-grid strong { color: var(--a-green); font-family: var(--serif); font-size: 28px; font-weight: 500; line-height: 1.1; }
.stat-grid p { color: #9aa39c; font-size: 8px; }
.dashboard-grid { display: grid; grid-template-columns: 1.35fr .65fr; gap: 18px; }
.dashboard-grid > .admin-card { padding: 22px; }
.dashboard-orders { grid-row: span 2; }
.admin-table-wrap { width: 100%; overflow-x: auto; }
.admin-table { width: 100%; border-collapse: collapse; white-space: nowrap; }
.admin-table th { padding: 10px 12px; color: #8b958e; border-bottom: 1px solid var(--a-line); font-size: 8px; font-weight: 850; letter-spacing: .1em; text-align: left; text-transform: uppercase; }
.admin-table td { padding: 14px 12px; border-bottom: 1px solid #edf0ec; color: #526057; font-size: 11px; vertical-align: middle; }
.admin-table tbody tr:last-child td { border-bottom: 0; }
.admin-table tbody tr:hover { background: #fafbf9; }
.admin-table td > small,.admin-table td > strong { display: block; }
.admin-table td > small { color: #9aa39d; font-size: 8px; }
.table-primary { color: var(--a-green); font-weight: 800; }
.channel-tag { padding: 5px 7px; color: #547069; border-radius: 6px; background: #edf2ef; font-size: 8px; font-weight: 850; }
.status-pill { display: inline-flex; align-items: center; padding: 5px 8px; border-radius: 999px; background: #eef1ee; color: #69756d; font-size: 8px; font-weight: 850; text-transform: capitalize; }
.status-pill::before { width: 5px; height: 5px; margin-right: 5px; content: ""; border-radius: 50%; background: currentColor; }
.status-active,.status-completed,.status-won,.status-replied { color: #2c7045; background: #e8f5eb; }
.status-new,.status-awaiting_payment,.status-reviewing,.status-in_progress { color: #9a621f; background: #fff3dd; }
.status-confirmed,.status-preparing,.status-ready,.status-out_for_delivery,.status-quoted { color: #336c92; background: #e7f2f8; }
.status-inactive,.status-cancelled,.status-lost,.status-closed { color: #7d8580; background: #ecefec; }
.stock-list a,.lead-list a { display: flex; align-items: center; gap: 11px; padding: 11px 0; border-bottom: 1px solid #edf0ec; }
.stock-list a:last-child,.lead-list a:last-child { border-bottom: 0; }
.stock-list img { width: 43px; height: 43px; object-fit: cover; border-radius: 9px; }
.stock-list span,.lead-list span:not(.lead-avatar) { flex: 1; min-width: 0; }
.stock-list strong,.stock-list small,.lead-list strong,.lead-list small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.stock-list strong,.lead-list strong { color: var(--a-green); font-size: 10px; }
.stock-list small,.lead-list small { color: var(--a-muted); font-size: 8px; }
.stock-list b { display: grid; min-width: 32px; height: 28px; place-items: center; color: #95601e; border-radius: 7px; background: #fff2d9; font-size: 11px; }
.stock-list b.critical { color: #9e3d31; background: #ffebe7; }
.lead-avatar { display: grid; flex: 0 0 35px; height: 35px; place-items: center; color: var(--a-green); border-radius: 50%; background: #eaf2e6; font-family: var(--serif); font-size: 14px; }
.lead-list time { color: #9aa39c; font-size: 8px; }
.admin-empty { display: grid; min-height: 180px; place-items: center; align-content: center; padding: 30px; color: var(--a-muted); text-align: center; }
.admin-empty > span { color: #95a69a; font-size: 32px; }
.admin-empty p { margin: 9px 0 15px; }
.admin-empty.small { min-height: 120px; }

.table-toolbar,.filter-bar { display: flex; align-items: center; gap: 12px; padding: 16px 18px; border-bottom: 1px solid var(--a-line); }
.table-toolbar form { flex: 1; }
.table-toolbar > span,.filter-bar > span { margin-left: auto; color: var(--a-muted); font-size: 9px; font-weight: 750; }
.admin-search { display: flex; max-width: 360px; height: 39px; align-items: center; gap: 8px; padding: 0 12px; border: 1px solid var(--a-line); border-radius: 9px; background: #fafbf9; }
.admin-search span { color: #8d9890; font-size: 18px; }
.admin-search input { width: 100%; border: 0; outline: 0; background: transparent; font-size: 11px; }
.product-table td:first-child { min-width: 245px; }
.table-product { display: flex; align-items: center; gap: 11px; }
.table-product img { width: 48px; height: 48px; object-fit: cover; border-radius: 10px; background: #f4f4ef; }
.table-product span { display: grid; }
.table-product small { color: var(--a-muted); font-size: 8px; }
.stock-count { display: inline-grid; min-width: 35px; height: 27px; place-items: center; color: #356b46; border-radius: 7px; background: #eaf4eb; font-weight: 800; }
.stock-count.low { color: #90631f; background: #fff3d9; }
.stock-count.critical { color: #963d30; background: #ffebe7; }
.integration-ok,.integration-off { font-size: 8px; font-weight: 800; }
.integration-ok { color: #317047; }
.integration-off { color: #949d97; }
.table-actions { display: flex; align-items: center; justify-content: flex-end; gap: 10px; }
.table-actions a,.table-actions button { border: 0; color: var(--a-green); background: transparent; font-size: 9px; font-weight: 800; cursor: pointer; }
.table-actions button { color: var(--a-red); }

.editor-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 18px; align-items: start; }
.editor-main,.editor-side { display: grid; gap: 18px; }
.editor-side { position: sticky; top: 105px; }
.form-card { padding: 24px; }
.admin-form { font-size: 12px; }
.admin-form label { display: block; color: #59655d; font-size: 9px; font-weight: 800; letter-spacing: .04em; }
.admin-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.admin-form select,.admin-form textarea { display: block; width: 100%; margin-top: 6px; padding: 11px 12px; border: 1px solid #dce2dc; border-radius: 9px; outline: 0; background: #fff; color: var(--a-ink); font-size: 11px; font-weight: 500; letter-spacing: 0; transition: border .2s,box-shadow .2s; }
.admin-form input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),.admin-form select { height: 42px; }
.admin-form textarea { min-height: 80px; resize: vertical; }
.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus { border-color: #83a65a; box-shadow: 0 0 0 3px rgba(131,166,90,.12); }
.admin-form label > small { display: block; margin-top: 5px; color: #98a09a; font-size: 8px; font-weight: 500; }
.form-card > label,.form-card > .field-grid { margin-bottom: 17px; }
.form-card > label:last-child { margin-bottom: 0; }
.field-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: 14px; }
.field-grid-three { grid-template-columns: repeat(3,1fr); }
.integration-badge { padding: 5px 8px; color: #496c31; border-radius: 999px; background: #eff7dd; font-size: 7px; font-weight: 850; text-transform: uppercase; }
.shopify-card { border-color: #d9e6c3; background: linear-gradient(135deg,#fff 55%,#f5faeb); }
.image-upload { position: relative; overflow: hidden; border: 1px dashed #bcc8be; border-radius: 13px; background: #f6f8f4; text-align: center; }
.image-upload img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.image-upload-landscape img { aspect-ratio: 1.2; }
.image-upload > div { display: grid; min-height: 190px; place-items: center; align-content: center; color: #8a968d; }
.image-upload > div span { font-size: 30px; }
.image-upload > div p { margin: 5px 0; font-size: 9px; }
.image-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.image-upload > button { position: absolute; right: 10px; bottom: 10px; padding: 7px 10px; color: var(--a-green); border: 1px solid var(--a-line); border-radius: 7px; background: rgba(255,255,255,.94); font-size: 8px; font-weight: 800; cursor: pointer; }
.form-card > small { display: block; margin-top: 8px; color: var(--a-muted); font-size: 8px; }
.toggle-field { display: flex!important; align-items: center; gap: 10px; margin-bottom: 17px!important; cursor: pointer; }
.toggle-field input { position: absolute; opacity: 0; }
.toggle-field > span { position: relative; display: block; flex: 0 0 37px; height: 21px; border-radius: 999px; background: #cdd4ce; transition: background .2s; }
.toggle-field > span::after { position: absolute; top: 3px; left: 3px; width: 15px; height: 15px; content: ""; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,.15); transition: transform .2s; }
.toggle-field input:checked + span { background: var(--a-green); }
.toggle-field input:checked + span::after { transform: translateX(16px); }
.toggle-field strong,.toggle-field small { display: block; }
.toggle-field strong { color: var(--a-ink); font-size: 10px; }
.toggle-field small { color: var(--a-muted); font-size: 8px; font-weight: 500; }

.content-card-list { padding: 0 20px; }
.content-card-list article { display: grid; grid-template-columns: 34px 110px 1fr auto auto; align-items: center; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--a-line); }
.content-card-list article:last-child { border-bottom: 0; }
.sort-number { color: #94a098; font-family: var(--serif); font-size: 13px; }
.content-card-list img { width: 110px; height: 78px; object-fit: cover; border-radius: 12px; }
.content-card-list article > div:nth-of-type(1) p { margin: 0; color: #7f8b83; font-size: 8px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.content-card-list article > div:nth-of-type(1) h2 { margin: 3px 0; color: var(--a-green); font-family: var(--serif); font-size: 23px; font-weight: 500; }
.content-card-list article > div:nth-of-type(1) span { color: var(--a-muted); font-size: 9px; }
.content-actions { display: flex; gap: 9px; }
.content-actions a,.content-actions button { border: 0; color: var(--a-green); background: transparent; font-size: 9px; font-weight: 800; cursor: pointer; }
.content-actions button { color: var(--a-red); }
.admin-project-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 18px; }
.admin-project-card { overflow: hidden; border: 1px solid var(--a-line); border-radius: var(--a-radius); background: #fff; }
.admin-project-card > img { width: 100%; aspect-ratio: 1.28; object-fit: cover; }
.admin-project-body { padding: 19px; }
.project-meta,.project-admin-footer,.project-admin-actions { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.project-meta { color: var(--a-muted); font-size: 7px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.admin-project-body h2 { margin: 9px 0 7px; color: var(--a-green); font-family: var(--serif); font-size: 24px; font-weight: 500; }
.admin-project-body > p { min-height: 42px; color: var(--a-muted); font-size: 9px; }
.project-admin-footer { margin: 15px 0; padding: 12px 0; border-top: 1px solid var(--a-line); border-bottom: 1px solid var(--a-line); color: var(--a-muted); font-size: 8px; }
.project-admin-actions .admin-button { min-height: 35px; padding: 0 12px; font-size: 8px; }
.project-admin-actions form button { border: 0; background: transparent; font-size: 8px; font-weight: 800; cursor: pointer; }
.text-danger { color: var(--a-red); }
.gallery-manager { margin-top: 22px; padding: 24px; }
.gallery-upload { display: grid; grid-template-columns: 1.1fr 1.3fr .45fr auto; align-items: end; gap: 12px; padding: 17px; border-radius: 12px; background: #f5f7f3; }
.gallery-upload input[type="file"] { display: block; width: 100%; margin-top: 8px; font-size: 9px; }
.gallery-admin-grid { display: grid; margin-top: 22px; grid-template-columns: repeat(4,1fr); gap: 14px; }
.gallery-admin-grid figure { overflow: hidden; margin: 0; border: 1px solid var(--a-line); border-radius: 12px; }
.gallery-admin-grid img { width: 100%; aspect-ratio: 1; object-fit: cover; }
.gallery-admin-grid figcaption { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 10px; }
.gallery-admin-grid strong,.gallery-admin-grid small { display: block; }
.gallery-admin-grid strong { overflow: hidden; color: var(--a-green); font-size: 8px; text-overflow: ellipsis; white-space: nowrap; }
.gallery-admin-grid small { color: var(--a-muted); font-size: 7px; }
.gallery-admin-grid form button { display: grid; width: 23px; height: 23px; place-items: center; border: 0; border-radius: 50%; color: var(--a-red); background: #ffebe7; cursor: pointer; }

.filter-bar label { display: flex; align-items: center; gap: 7px; color: var(--a-muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.filter-bar select { height: 35px; padding: 0 28px 0 9px; border: 1px solid var(--a-line); border-radius: 8px; background: #fff; font-size: 9px; text-transform: none; }
.filter-bar .admin-button { min-height: 35px; }
.filter-bar > a { color: var(--a-muted); font-size: 9px; }
.payment-status { display: block; color: #7a837d; font-size: 9px; font-weight: 800; text-transform: capitalize; }
.payment-paid { color: #2b7446; }
.payment-failed { color: var(--a-red); }
.row-arrow { display: grid; width: 27px; height: 27px; place-items: center; color: var(--a-green); border: 1px solid var(--a-line); border-radius: 7px; }
.order-title-row { display: flex; align-items: center; gap: 14px; }
.order-title-row h1 { margin: 0; }
.order-detail-grid { display: grid; grid-template-columns: 1fr 310px; gap: 18px; align-items: start; }
.order-detail-grid > div,.order-detail-grid > aside { display: grid; gap: 18px; }
.order-items-card,.info-card { padding: 22px; }
.order-line { display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 12px; padding: 13px 0; border-bottom: 1px solid var(--a-line); }
.order-line-image { display: grid; width: 42px; height: 42px; place-items: center; color: var(--a-green); border-radius: 9px; background: #edf3e9; }
.order-line strong,.order-line small { display: block; }
.order-line strong { color: var(--a-green); font-size: 10px; }
.order-line small { color: var(--a-muted); font-size: 8px; }
.order-line > b { color: var(--a-green); font-family: var(--serif); font-size: 14px; }
.order-money { margin-left: auto; padding-top: 15px; width: min(100%,320px); }
.order-money p { display: flex; justify-content: space-between; margin: 5px 0; color: var(--a-muted); font-size: 9px; }
.order-money p:last-child { margin-top: 12px; padding-top: 12px; color: var(--a-green); border-top: 1px solid var(--a-line); font-family: var(--serif); font-size: 17px; }
.info-card dl { margin: 0; }
.info-card dt { margin-top: 12px; color: #9aa39d; font-size: 7px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.info-card dd { margin: 3px 0 0; color: var(--a-green); font-size: 11px; }
.info-card address { color: var(--a-green); font-size: 11px; font-style: normal; line-height: 1.75; }

.inbox-layout { display: grid; gap: 10px; }
.inbox-item { overflow: hidden; }
.inbox-item summary { display: grid; grid-template-columns: 40px 190px 1fr auto 95px 20px; align-items: center; gap: 12px; padding: 15px 18px; cursor: pointer; list-style: none; }
.inbox-item summary::-webkit-details-marker { display: none; }
.inbox-person strong,.inbox-person small { display: block; }
.inbox-person strong { color: var(--a-green); font-size: 10px; }
.inbox-person small { color: var(--a-muted); font-size: 8px; }
.inbox-subject { overflow: hidden; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.inbox-item summary time { color: var(--a-muted); font-size: 8px; text-align: right; }
.inbox-item summary > b { color: var(--a-muted); font-size: 15px; transition: transform .2s; }
.inbox-item[open] summary > b { transform: rotate(180deg); }
.inbox-body { display: grid; grid-template-columns: 1fr 420px; gap: 28px; padding: 22px; border-top: 1px solid var(--a-line); background: #fafbf9; }
.message-copy { color: #445148; font-family: var(--serif); font-size: 16px; line-height: 1.7; }
.inline-update { display: grid; gap: 10px; }
.inline-update > div { display: flex; justify-content: flex-end; gap: 8px; }
.quote-grid-admin { display: grid; grid-template-columns: repeat(2,1fr); gap: 16px; }
.quote-card-admin { padding: 21px; }
.quote-card-head,.quote-card-head > div { display: flex; align-items: center; justify-content: space-between; gap: 11px; }
.quote-card-head > div { justify-content: flex-start; }
.quote-card-head h2 { margin: 0; color: var(--a-green); font-family: var(--serif); font-size: 21px; font-weight: 500; }
.quote-card-head p { margin: 0; color: var(--a-muted); font-size: 8px; }
.quote-card-admin dl { display: grid; margin: 19px 0; grid-template-columns: repeat(2,1fr); gap: 10px; }
.quote-card-admin dl div { padding: 10px; border-radius: 8px; background: #f5f7f3; }
.quote-card-admin dt { color: #929c95; font-size: 7px; font-weight: 850; text-transform: uppercase; }
.quote-card-admin dd { margin: 3px 0 0; color: var(--a-green); font-size: 9px; font-weight: 700; }
.quote-message { min-height: 58px; padding: 13px; color: #59665d; border-left: 2px solid var(--a-lime); background: #fbfcfa; font-size: 10px; }
.quote-contact { display: flex; flex-wrap: wrap; gap: 10px 15px; padding: 14px 0; color: var(--a-green); border-bottom: 1px solid var(--a-line); font-size: 8px; font-weight: 700; }
.quote-contact time { margin-left: auto; color: var(--a-muted); }
.quote-update { display: grid; margin-top: 15px; grid-template-columns: 120px 1fr auto; align-items: end; gap: 10px; }
.quote-update textarea { min-height: 42px; height: 42px; }

.pos-layout { display: grid; grid-template-columns: 1fr 380px; gap: 18px; align-items: start; }
.pos-catalog { min-width: 0; }
.pos-toolbar { display: flex; align-items: center; justify-content: space-between; margin-bottom: 14px; }
.pos-toolbar > span { color: var(--a-muted); font-size: 8px; }
.pos-product-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 13px; }
.pos-product-grid article { position: relative; overflow: hidden; border: 1px solid var(--a-line); border-radius: 15px; background: #fff; }
.pos-product-grid article.hidden { display: none; }
.pos-product-grid img { width: 100%; aspect-ratio: 1.25; object-fit: cover; }
.pos-product-grid article > div { padding: 13px; }
.pos-product-grid p { margin: 0; color: var(--a-muted); font-size: 7px; font-weight: 800; text-transform: uppercase; }
.pos-product-grid h2 { margin: 3px 0 9px; color: var(--a-green); font-family: var(--serif); font-size: 18px; font-weight: 500; }
.pos-product-grid article > div > span { display: flex; align-items: center; justify-content: space-between; }
.pos-product-grid strong { color: var(--a-green); font-family: var(--serif); font-size: 16px; }
.pos-product-grid small { color: var(--a-muted); font-size: 7px; }
.pos-product-grid form { position: absolute; right: 10px; top: 10px; }
.pos-product-grid form button { display: grid; width: 32px; height: 32px; place-items: center; border: 0; color: #fff; border-radius: 50%; background: var(--a-green); font-size: 20px; cursor: pointer; }
.pos-product-grid form button:disabled { cursor: not-allowed; opacity: .4; }
.pos-cart { position: sticky; top: 105px; padding: 20px; }
.pos-cart-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 16px; border-bottom: 1px solid var(--a-line); }
.pos-cart-head h2 { margin: 0; color: var(--a-green); font-family: var(--serif); font-size: 23px; font-weight: 500; }
.pos-cart-head p { margin: 0; color: var(--a-muted); font-size: 8px; }
.pos-cart-head button { border: 0; color: var(--a-red); background: transparent; font-size: 8px; font-weight: 800; cursor: pointer; }
.pos-lines > div { position: relative; display: grid; grid-template-columns: 42px 1fr auto; align-items: center; gap: 10px; padding: 12px 20px 12px 0; border-bottom: 1px solid var(--a-line); }
.pos-lines img { width: 42px; height: 42px; object-fit: cover; border-radius: 8px; }
.pos-lines strong,.pos-lines small { display: block; }
.pos-lines strong { color: var(--a-green); font-size: 9px; }
.pos-lines small { color: var(--a-muted); font-size: 7px; }
.pos-lines b { color: var(--a-green); font-family: var(--serif); font-size: 12px; }
.pos-lines form { position: absolute; right: 0; top: 6px; }
.pos-lines form button { border: 0; color: var(--a-muted); background: transparent; cursor: pointer; }
.pos-total { display: flex; align-items: center; justify-content: space-between; padding: 17px 0; color: var(--a-green); font-family: var(--serif); font-size: 19px; }
.pos-total strong { font-size: 27px; }
.pos-checkout { display: grid; gap: 10px; padding-top: 14px; border-top: 1px solid var(--a-line); }
.pos-disclaimer { margin: 0; color: #909991; font-size: 7px; line-height: 1.5; text-align: center; }
.pos-empty { min-height: 330px; }

.settings-layout { display: grid; grid-template-columns: 190px minmax(0,780px); gap: 24px; align-items: start; }
.settings-nav { position: sticky; top: 115px; display: grid; padding: 10px; border: 1px solid var(--a-line); border-radius: 13px; background: #fff; }
.settings-nav a { padding: 10px; border-radius: 8px; color: var(--a-muted); font-size: 9px; font-weight: 750; }
.settings-nav a:hover { color: var(--a-green); background: #f1f5ed; }
.settings-content { display: grid; gap: 17px; }
.settings-note { margin-bottom: 19px; padding: 14px; border-radius: 10px; background: #f2f7e9; }
.settings-note strong { color: var(--a-green); font-size: 10px; }
.settings-note p { margin: 3px 0 0; color: #667260; font-size: 9px; }
.shopify-settings { border-color: #dce8c9; }
.integration-checklist { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 19px; padding-top: 16px; border-top: 1px solid var(--a-line); }
.integration-checklist span { padding: 6px 9px; color: #8a938c; border-radius: 999px; background: #eef1ee; font-size: 7px; font-weight: 800; }
.integration-checklist span::before { margin-right: 5px; content: "○"; }
.integration-checklist span.done { color: #286b40; background: #e7f4e8; }
.integration-checklist span.done::before { content: "✓"; }
.settings-save { justify-self: end; }
.mail-test-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; align-items: end; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--a-line); }
.mail-test-row .admin-button { margin-bottom: 1px; }
.email-log { display: grid; gap: 0; margin-top: 20px; overflow: hidden; border: 1px solid var(--a-line); border-radius: 11px; }
.email-log > h3 { margin: 0; padding: 12px 14px; color: var(--a-green); background: #f3f6ef; font-size: 9px; text-transform: uppercase; }
.email-log > div { display: grid; grid-template-columns: 9px 1fr; gap: 9px; align-items: start; padding: 10px 13px; border-top: 1px solid var(--a-line); }
.email-log > div:first-child { border-top: 0; }
.email-log p,.email-log strong,.email-log small { display: block; margin: 0; }
.email-log strong { color: var(--a-green); font-size: 8px; }
.email-log small { margin-top: 2px; color: var(--a-muted); font-size: 7px; line-height: 1.5; overflow-wrap: anywhere; }
.mail-dot { width: 7px; height: 7px; margin-top: 4px; border-radius: 50%; background: #8d968f; }
.mail-sent { background: #4d9d55; box-shadow: 0 0 0 3px #e7f4e8; }
.mail-failed { background: #be5b48; box-shadow: 0 0 0 3px #fae9e4; }
.compact-log { margin-top: 14px; }
.inline-actions { display: flex; gap: 8px; }
.empty-note { margin: 13px 0 0; color: var(--a-muted); font-size: 8px; }
.profile-layout { display: grid; grid-template-columns: 280px minmax(0,650px); gap: 18px; align-items: start; }
.profile-summary { padding: 30px; text-align: center; }
.profile-avatar { display: grid; width: 80px; height: 80px; margin: 0 auto 15px; place-items: center; color: var(--a-green); border-radius: 50%; background: var(--a-lime); font-family: var(--serif); font-size: 34px; }
.profile-summary h2 { margin: 0; color: var(--a-green); font-family: var(--serif); font-size: 24px; font-weight: 500; }
.profile-summary > p { margin: 3px 0 9px; color: var(--a-muted); font-size: 9px; }
.profile-summary > span { padding: 5px 8px; color: #356d45; border-radius: 999px; background: #e7f3e8; font-size: 7px; font-weight: 800; text-transform: uppercase; }
.profile-summary dl { margin: 25px 0 0; padding-top: 18px; border-top: 1px solid var(--a-line); text-align: left; }
.profile-summary dt { color: #9aa39c; font-size: 7px; font-weight: 800; text-transform: uppercase; }
.profile-summary dd { margin: 2px 0 13px; color: var(--a-green); font-size: 9px; }
.security-divider { display: flex; align-items: center; gap: 12px; margin: 24px 0 17px; color: #8d968f; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.security-divider::before,.security-divider::after { flex: 1; height: 1px; content: ""; background: var(--a-line); }

.login-body { min-height: 100vh; padding: 24px; background: var(--a-green-dark); }
.login-shell { display: grid; width: min(1050px,100%); min-height: calc(100vh - 48px); margin: 0 auto; overflow: hidden; grid-template-columns: 1.1fr .9fr; border-radius: 28px; background: #fff; box-shadow: 0 30px 100px rgba(0,0,0,.28); }
.login-visual { position: relative; overflow: hidden; }
.login-visual::after { position: absolute; inset: 0; content: ""; background: linear-gradient(180deg,rgba(10,35,23,.08),rgba(10,35,23,.85)); }
.login-visual img { width: 100%; height: 100%; object-fit: cover; }
.login-visual-copy { position: absolute; z-index: 2; right: 50px; bottom: 50px; left: 50px; color: #fff; }
.login-visual-copy > span { color: var(--a-lime); font-size: 8px; font-weight: 850; letter-spacing: .2em; }
.login-visual-copy h1 { margin: 12px 0; font-family: var(--serif); font-size: 54px; font-weight: 500; line-height: .98; }
.login-visual-copy p { margin: 0; color: rgba(255,255,255,.55); font-size: 10px; }
.login-panel { display: flex; flex-direction: column; justify-content: center; padding: clamp(35px,6vw,70px); }
.login-panel > .admin-brand { position: absolute; top: 55px; }
.login-copy { margin: 60px 0 30px; }
.login-copy h1 { margin-bottom: 8px; color: var(--a-green); font-family: var(--serif); font-size: 46px; font-weight: 500; }
.login-copy > p:not(.admin-kicker) { color: var(--a-muted); font-size: 11px; }
.login-form { display: grid; gap: 17px; }
.login-form .admin-button { margin-top: 5px; }
.back-site { margin-top: 25px; color: var(--a-muted); font-size: 9px; font-weight: 700; }

@media (max-width: 1180px) {
    .stat-grid { grid-template-columns: repeat(2,1fr); }
    .admin-project-grid { grid-template-columns: repeat(2,1fr); }
    .pos-product-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 950px) {
    .admin-app { grid-template-columns: 1fr; }
    .admin-sidebar { transform: translateX(-100%); transition: transform .25s; box-shadow: 20px 0 50px rgba(0,0,0,.2); }
    .admin-sidebar.open { transform: translateX(0); }
    .sidebar-close,.sidebar-toggle { display: block; }
    .admin-main { grid-column: 1; }
    .admin-topbar { padding-inline: 20px; }
    .admin-topbar > div:first-of-type { flex: 1; margin-left: 12px; }
    .admin-content { padding: 25px 20px; }
    .dashboard-grid { grid-template-columns: 1fr; }
    .dashboard-orders { grid-row: auto; }
    .editor-layout,.order-detail-grid,.pos-layout { grid-template-columns: 1fr; }
    .editor-side,.pos-cart { position: static; }
    .inbox-body { grid-template-columns: 1fr; }
    .settings-layout { grid-template-columns: 1fr; }
    .settings-nav { position: static; display: flex; overflow-x: auto; }
}
@media (max-width: 720px) {
    .admin-content { padding: 21px 13px; }
    .admin-page-head { align-items: start; flex-direction: column; }
    .admin-page-head h1 { font-size: 35px; }
    .head-actions { width: 100%; }
    .head-actions .admin-button { flex: 1; }
    .view-site,.admin-identity { display: none; }
    .stat-grid { grid-template-columns: 1fr; }
    .admin-table th,.admin-table td { padding-inline: 9px; }
    .field-grid,.field-grid-three { grid-template-columns: 1fr; }
    .content-card-list article { grid-template-columns: 28px 80px 1fr; gap: 12px; }
    .content-card-list img { width: 80px; height: 65px; }
    .content-card-list article > .status-pill,.content-actions { grid-column: 3; }
    .admin-project-grid,.quote-grid-admin { grid-template-columns: 1fr; }
    .gallery-upload { grid-template-columns: 1fr; }
    .gallery-admin-grid { grid-template-columns: repeat(2,1fr); }
    .filter-bar { align-items: stretch; flex-direction: column; }
    .filter-bar label { justify-content: space-between; }
    .filter-bar > span { margin-left: 0; }
    .inbox-item summary { grid-template-columns: 36px 1fr auto; }
    .inbox-subject,.inbox-item summary time { grid-column: 2; }
    .inbox-item summary > b { grid-column: 3; grid-row: 1; }
    .quote-update { grid-template-columns: 1fr; }
    .pos-product-grid { grid-template-columns: 1fr; }
    .profile-layout { grid-template-columns: 1fr; }
    .mail-test-row { grid-template-columns: 1fr; }
    .login-body { padding: 0; }
    .login-shell { min-height: 100vh; grid-template-columns: 1fr; border-radius: 0; }
    .login-visual { display: none; }
    .login-panel { min-height: 100vh; }
    .login-panel > .admin-brand { top: 35px; }
}
