

/* IkraBaku Material: working admin, shared tokens for future themes. */
:root{color-scheme:light;--accent:#923b47;--soft:#f7ecee;--nav:#29282c;--gold:#d1af78;--bg:#f3f4f6;--ink:#30343c;--muted:#737985;--line:#e7e9ee;font:14px/1.5 'Segoe UI',Arial,sans-serif;background:var(--bg);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;min-height:40px;border:1px solid #dce0e6;border-radius:4px;background:white;padding:9px 14px;font-size:12px;transition:background .15s}button:hover:not(:disabled){background:var(--soft);border-color:#c8a4aa}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}input:focus,textarea:focus,select:focus{outline:2px solid var(--accent);outline-offset:1px}[hidden]{display:none!important}a{color:var(--accent);overflow-wrap:anywhere}p{color:var(--muted);font-size:12px}h2{font-size:25px;font-weight:500;letter-spacing:-.4px;margin:0}h3{font-size:14px;font-weight:600;margin:0 0 5px;overflow-wrap:anywhere}svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.site-header{position:fixed;top:0;left:230px;right:0;height:64px;background:white;display:flex;align-items:center;gap:16px;padding:0 32px;box-shadow:0 1px 5px #00000008;z-index:5}.site-header strong{font-weight:500;font-size:13px}.header-caption{font-size:12px;color:var(--muted);margin-left:auto}main{margin:64px 0 0 230px;padding:30px 32px;max-width:1800px}#sidebar{position:fixed;inset:0 auto 0 0;width:230px;background:var(--nav);color:#c7c8cf;display:flex;flex-direction:column;z-index:7;overflow-y:auto}.sidebar-brand{font:italic 30px 'Segoe Print','Bradley Hand',cursive;color:var(--gold);padding:23px 25px 19px}.sidebar-profile{display:flex;align-items:center;gap:12px;padding:0 24px 25px;border-bottom:1px solid #ffffff12}.avatar{flex:0 0 36px;height:36px;border-radius:50%;background:#ffffff12;color:var(--gold);display:grid;place-items:center;font-size:12px}.sidebar-profile p{font-size:12px;color:#c7c8cf;margin:0;overflow-wrap:anywhere}.nav-caption{padding:24px 25px 10px;font-size:10px;letter-spacing:1.5px;color:#9899a4}nav{display:flex;flex-direction:column}nav button{display:flex;align-items:center;gap:12px;text-align:left;border:0;border-left:3px solid transparent;border-radius:0;padding:13px 20px;background:transparent;color:#c7c8cf;font-size:13px;min-height:54px}nav button:hover:not(:disabled){background:#ffffff08}nav button[aria-pressed=true]{background:#ffffff0c;border-left-color:var(--gold);color:white}.nav-icon{flex:0 0 30px;height:30px;border-radius:50%;background:#ffffff09;display:grid;place-items:center}.sidebar-footer{margin-top:auto;padding:24px;font-size:11px;color:#aaaab5}.sidebar-footer button{display:block;margin-top:12px;background:transparent;color:#d6d6df;border-color:#ffffff20;width:100%}.sidebar-footer button:hover:not(:disabled){background:#ffffff10}#menu-toggle,#menu-backdrop{display:none}
body:has(#workspace[hidden]) main{margin-left:0}body:has(#workspace[hidden]) .site-header{left:0}#login{max-width:390px;margin:45px auto;background:white;padding:30px;border-radius:5px;box-shadow:0 2px 12px #17232e12}#login h2{margin-bottom:24px}#login button{width:100%}
.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:22px}.toolbar h2{margin-right:auto}.toolbar label{margin-bottom:0}.toolbar+ p{margin-top:-10px;margin-bottom:22px}#workspace>section>p{line-height:1.7}#create,#create-campaign,#add-staff,#save,#publish-confirm,#login button,#campaign-form button[type=submit],#staff-form button[type=submit],#order-actions button:first-child{background:var(--accent);border-color:var(--accent);color:white;box-shadow:0 2px 4px #00000014}#create:hover,#create-campaign:hover,#add-staff:hover,#save:hover,#publish-confirm:hover,#login button:hover{background:#7e303b}
label{display:grid;gap:7px;margin-bottom:18px;font-size:12px;color:#656c78}input,select,textarea{width:100%;min-width:0;border:1px solid #dce0e6;border-radius:3px;background:white;padding:10px 12px;font-size:14px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9298a3}input[type=file]{font-size:12px;background:#fafbfc;border-style:dashed;padding:18px}input[type=file]::file-selector-button{border:0;border-radius:3px;background:var(--soft);color:var(--accent);padding:8px 12px;margin-right:12px;cursor:pointer}.check{display:flex;align-items:center;font-size:13px}.check input{width:18px;height:18px;accent-color:var(--accent)}.fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.fields label{margin-bottom:12px}.list-filters,#orders-section>.fields{display:grid;grid-template-columns:minmax(0,2fr) minmax(170px,1fr);gap:16px;background:white;border:1px solid var(--line);border-radius:4px;padding:17px 22px;margin-bottom:12px}.list-filters label,#orders-section>.fields label{margin:0}.result-count{font-size:11px;margin:10px 0;color:var(--muted)}
#products,#campaigns,#orders-list,#staff-list,#audit-list{background:white;border-radius:4px;box-shadow:0 1px 3px #17232e12;overflow:hidden}.product{display:flex;align-items:center;gap:15px;padding:16px 22px;border-bottom:1px solid var(--line)}.product:last-child,.campaign-row:last-child{border-bottom:0}.product img{width:52px;height:52px;object-fit:contain;background:white;border:1px solid var(--line);border-radius:4px;flex-shrink:0}.product>div{flex:1;min-width:0}.product p{margin:3px 0}.product button{color:var(--accent);border-color:transparent}.product:hover,.campaign-row:hover{background:#fdfdfe}.campaign-row{display:grid;grid-template-columns:minmax(0,1fr) 285px;align-items:center;gap:24px;padding:18px 22px;border-bottom:1px solid var(--line)}.campaign-row h3{margin:6px 0}.campaign-row p{margin:3px 0}.campaign-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.campaign-actions button{font-size:11px;padding:7px;min-height:42px}.campaign-actions button:nth-child(2){background:var(--soft);border-color:var(--soft);color:var(--accent)}#orders-list .campaign-row,#staff-list .campaign-row{grid-template-columns:minmax(0,1fr) auto}#orders-list .campaign-row>button,#staff-list .campaign-row>button{color:var(--accent);border-color:transparent}.tag{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:600;line-height:17px;padding:3px 8px;border-radius:3px;background:#eef0f3;color:#656e7c}.tag:before{content:'';width:5px;height:5px;flex-shrink:0;border-radius:50%;background:currentColor}.status-green{color:#27734e;background:#eaf6ef}.status-yellow{color:#8b6714;background:#fff6dc}.status-red{color:#aa414d;background:#fceff0}.status-muted{color:#687180;background:#eef0f3}.empty-state{padding:32px 20px;text-align:center;margin:0}.danger{color:#ad414e;border-color:#edc6cc}
#products>button,#campaigns>button,#orders-list>button{display:block;width:calc(100% - 32px);margin:12px auto 16px}
dialog{width:min(760px,calc(100% - 28px));max-height:90dvh;overflow:auto;border:0;border-radius:5px;padding:24px;color:var(--ink);background:white;box-shadow:0 20px 80px #14202e40}dialog::backdrop{background:#19202c80}dialog>.toolbar,dialog form>.toolbar{position:sticky;top:-24px;background:white;z-index:3;padding:16px 0;border-bottom:1px solid var(--line);margin-bottom:22px}dialog .toolbar h2{font-size:21px}dialog .actions{position:sticky;bottom:-24px;background:white;padding:14px 0;border-top:1px solid var(--line);margin-top:20px;z-index:2}.actions{display:flex;gap:10px}.actions button{flex:1;min-width:0}#preview{width:100px;height:100px;object-fit:contain;border:1px solid var(--line);border-radius:4px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:15px 0}.photo-grid img{width:100%;height:160px;object-fit:contain;border:1px solid var(--line);border-radius:4px;background:#fafbfc}.photo-actions{display:flex;gap:4px}.photo-actions button{flex:1;padding:6px;min-width:0;font-size:12px}.message-text{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);font-size:14px}.table-edit-row{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.table-edit-row input{flex:1 1 90px;width:90px}label:has(input[required]),label:has(textarea[required]){position:relative}label:has(input[required])::after,label:has(textarea[required])::after{content:'*';position:absolute;right:3px;top:0;color:#b34854}.required{color:#b34854}.fields label{min-width:0}#staff-login-hint{font-size:12px;margin-top:-7px}
table{width:100%;table-layout:fixed;border-collapse:collapse;background:white;margin:16px 0;box-shadow:0 1px 3px #17232e10}th,td{text-align:left;padding:13px 16px;border-bottom:1px solid var(--line);overflow-wrap:anywhere;font-size:12px}th{background:#fafbfc;font-weight:500;color:#737985;font-size:11px}#analytics-content table th:first-child{width:46%}#analytics-content td:not(:first-child),#analytics-content th:not(:first-child){text-align:right}#analytics-content h3{margin-top:28px}#analytics-content details{background:white;padding:18px 22px;border:1px solid var(--line);border-radius:4px;margin:20px 0}summary{cursor:pointer;color:var(--accent);font-size:13px}.analytics-summary{display:flex;flex-wrap:wrap;gap:8px 24px;background:white;padding:14px 20px;border-radius:4px}.analytics-summary p{margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:23px}.metric-card{background:white;border-top:3px solid transparent;border-radius:4px;padding:21px;box-shadow:0 1px 3px #17232e12;display:flex;flex-direction:column;gap:5px}.metric-card:first-child{border-color:var(--accent)}.metric-label{font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.metric-value{font-size:29px;font-weight:500}.metric-note{font-size:11px;color:var(--muted)}#audit-section>h2{margin-bottom:22px}#audit-list{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:2.3;padding:22px}#staff-list>p{padding:22px}
#message:empty,[role=alert]:empty{display:none}#message:not(:empty){position:fixed;bottom:20px;right:20px;max-width:min(480px,calc(100vw - 40px));display:flex;align-items:flex-start;gap:12px;padding:15px 18px;border-radius:4px;z-index:20;box-shadow:0 6px 24px #0003;background:#30333b;color:white;font-size:12px}#message .toast-close{flex:0 0 32px;min-height:32px;padding:0;border:0;font-size:24px;line-height:32px;margin:-5px -8px -5px 0;background:transparent;color:white}dialog [role=alert]:not(:empty){position:sticky;bottom:66px;padding:12px;background:#fceff0;color:#a43543;border:1px solid #efc6cd;border-radius:4px;z-index:4}
@media(max-width:1100px){main{padding:24px}.site-header{padding:0 24px}.metric-grid{gap:10px}.metric-card{padding:15px}.campaign-row{gap:14px;grid-template-columns:minmax(0,1fr) 260px}}
@media(max-width:800px){main{margin-left:0;padding:22px 16px}.site-header{left:0;padding:0 16px}#sidebar{transform:translateX(-100%);transition:transform .18s}.menu-open #sidebar{transform:translateX(0)}#menu-toggle{display:block;background:transparent;border:0;font-size:20px}.menu-open #menu-backdrop:not([hidden]){display:block;position:fixed;inset:0;background:#19202c80;border:0;border-radius:0;z-index:6}body:has(#workspace[hidden]) #menu-toggle{display:none}.toolbar h2{font-size:23px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.campaign-row{grid-template-columns:1fr}.campaign-actions{max-width:440px}dialog{padding:18px}dialog>.toolbar,dialog form>.toolbar{top:-18px}dialog .actions{bottom:-18px}.product{padding:15px;gap:12px}.campaign-row{padding:16px}.list-filters,#orders-section>.fields{padding:15px;gap:12px}.site-header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-caption{font-size:11px}}
@media(max-width:480px){.fields,.list-filters,#orders-section>.fields{grid-template-columns:1fr}.toolbar{gap:8px}.toolbar h2{flex-basis:100%;margin-bottom:3px}.toolbar label{flex:1}.product{flex-wrap:wrap}.product button{margin-left:auto;padding:5px 10px;min-height:36px}.product img{width:46px;height:46px}.product>div{min-width:160px}.campaign-actions{max-width:none}#orders-list .campaign-row,#staff-list .campaign-row{grid-template-columns:1fr;gap:8px}#orders-list .campaign-row>button,#staff-list .campaign-row>button{justify-self:start}th,td{padding:10px 8px;font-size:11px}.photo-actions{flex-wrap:wrap}.metric-card{padding:14px}.metric-value{font-size:26px}dialog .toolbar{flex-wrap:nowrap}dialog .toolbar h2{flex-basis:auto;font-size:19px}#message:not(:empty){right:12px;bottom:12px;max-width:calc(100vw - 24px)}}
@media(min-width:1000px){.product>div{display:grid;grid-template-columns:minmax(130px,1.1fr) minmax(170px,1fr) 140px;gap:16px;align-items:center}.product h3,.product p{margin:0}.product .tag{justify-self:start}.product{min-height:86px}}
@media(max-width:800px){#sidebar{visibility:hidden}.menu-open #sidebar{visibility:visible}}

/* Comfortable compact density; retain larger touch targets on phones. */
main{padding:22px 26px}.site-header{height:56px;padding-inline:26px}main{margin-top:56px}
.sidebar-brand{padding:18px 24px 14px}.sidebar-profile{padding-bottom:18px}.nav-caption{padding-top:18px}nav button{min-height:46px;padding-block:9px}.sidebar-footer{padding:18px 24px}
.toolbar{gap:8px;margin-bottom:16px}.toolbar+ p{margin-bottom:16px}h2{font-size:23px}
button{min-height:36px;padding:7px 12px}input,select,textarea{padding:8px 10px}label{gap:5px;margin-bottom:14px}
.list-filters,#orders-section>.fields{padding:12px 16px;gap:12px;margin-bottom:8px}.result-count{margin:7px 0}
.campaign-row{padding:12px 16px;gap:16px}.campaign-row h3{margin:3px 0}.campaign-row p{margin:2px 0}
.campaign-actions{gap:4px}.campaign-actions button{min-height:36px;padding:5px 7px}
.product{padding:11px 16px;gap:12px;min-height:72px}.product img{width:46px;height:46px}
.metric-grid{gap:12px;margin-bottom:16px}.metric-card{padding:15px 17px;gap:3px}.metric-value{font-size:27px}
th,td{padding:10px 13px}table{margin:12px 0}.analytics-summary{padding:11px 16px;gap:6px 20px}#analytics-content h3{margin-top:20px}#analytics-content details{padding:14px 16px;margin:16px 0}#audit-list{padding:16px;line-height:1.9}#audit-section>h2{margin-bottom:16px}
dialog{padding:20px}dialog>.toolbar,dialog form>.toolbar{top:-20px;padding:11px 0;margin-bottom:16px}dialog .actions{bottom:-20px;padding:11px 0;margin-top:14px}
@media(min-width:1000px){
  #staff-list .campaign-row>div,#orders-list .campaign-row>div{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;align-items:center}
  #staff-list .campaign-row h3,#orders-list .campaign-row h3{grid-column:1;grid-row:1}
  #staff-list .campaign-row .tag,#orders-list .campaign-row .tag{grid-column:2;grid-row:1 / span 3;justify-self:start}
  #staff-list .campaign-row p,#orders-list .campaign-row p{grid-column:1}
}
@media(max-width:800px){main{padding:18px 16px}.site-header{padding-inline:16px}button,.campaign-actions button{min-height:42px}.campaign-actions button{padding-block:7px}nav button{min-height:46px}.metric-card{padding:13px}dialog{padding:18px}dialog>.toolbar,dialog form>.toolbar{top:-18px}dialog .actions{bottom:-18px}.product{padding:12px}.campaign-row{padding:13px}.list-filters,#orders-section>.fields{padding:12px}}
@media(max-width:480px){th,td{padding:9px 8px}.product button{min-height:42px}.toolbar h2{font-size:22px}}
