:root{--black: #070706;--coal: #11100f;--gold: #ddb12a;--gold-dark: #6f5009;--line: #e6e0d5;--soft: #f8f7f4;--muted: #74706a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#171615;background:#fff}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;overflow-x:hidden}button,input,textarea,select{font:inherit}h1,h2{font-family:Georgia,Times New Roman,serif;letter-spacing:0}.login-screen{min-height:100vh;display:grid;place-items:center;background:var(--black);padding:24px}.login-card{width:min(520px,100%);display:grid;gap:18px;background:#f8f7f4;padding:42px;border-radius:6px;box-shadow:0 28px 70px #00000059}.login-card h1,.login-card p{text-align:center;margin:0}.login-card h1{font-size:32px}.login-card p{color:var(--muted)}.lock{width:54px;height:54px;display:grid;place-items:center;border-radius:50%;color:var(--gold);background:#fff3d0;margin:0 auto}label{display:grid;gap:8px;font-weight:800}input,textarea,select{border:1px solid var(--line);background:#fff;min-height:48px;padding:0 14px}.staff-form input:-webkit-autofill,.staff-form input:-webkit-autofill:hover,.staff-form input:-webkit-autofill:focus,.customer-form input:-webkit-autofill,.customer-form input:-webkit-autofill:hover,.customer-form input:-webkit-autofill:focus{-webkit-text-fill-color:#171615;box-shadow:0 0 0 1000px #fff inset;transition:background-color 9999s ease-out}.password-field{position:relative;display:block}.password-field input{width:100%;padding-right:50px}.login-card .password-toggle{position:absolute;top:50%;right:12px;transform:translateY(-50%);width:34px;height:34px;min-height:34px;padding:0;display:grid;place-items:center;color:var(--muted);background:transparent;border-radius:3px}.login-card .password-toggle:hover{color:#171615}.login-card .password-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:1px}textarea{min-height:92px;padding-top:12px;resize:vertical}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.login-card button,form button{min-height:50px;background:var(--gold);color:#111;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:10px}.login-card a{text-align:center;color:var(--muted);font-weight:700}.error{color:#b91c1c;text-align:center;font-weight:800}.admin-shell{min-height:100vh;overflow-x:hidden}.sidebar{position:fixed;left:0;top:0;z-index:30;width:280px;height:100vh;max-height:100vh;background:var(--black);color:#bbb5aa;display:flex;flex-direction:column;overflow:hidden;border-right:1px solid rgba(221,177,42,.22)}.admin-brand{flex:0 0 auto;padding:28px 18px;border-bottom:1px solid rgba(221,177,42,.2)}.admin-brand strong{display:block;color:var(--gold);font-family:Georgia,serif;font-size:25px}.admin-brand span{letter-spacing:5px;font-size:12px;color:#eee}.sidebar-menu{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding-bottom:12px;scrollbar-width:thin;scrollbar-color:rgba(221,177,42,.46) transparent}.sidebar-menu::-webkit-scrollbar{width:6px}.sidebar-menu::-webkit-scrollbar-thumb{background:#ddb12a75;border-radius:999px}.sidebar-menu::-webkit-scrollbar-track{background:transparent}.sidebar p{margin:0;padding:14px 18px 10px;color:#777066;font-weight:900;font-size:13px;letter-spacing:1px}.sidebar nav{display:grid;gap:2px;padding:0 8px}.sidebar a{min-width:0;display:flex;align-items:center;gap:14px;color:inherit;text-decoration:none;padding:12px 10px;border-radius:3px;font-weight:800;line-height:1.25}.sidebar a svg{flex:0 0 auto}.sidebar a span{min-width:0;overflow:hidden;text-overflow:ellipsis}.sidebar a.active,.sidebar a:hover{background:#ddb12a38;color:var(--gold)}.sidebar-foot{flex:0 0 auto;border-top:1px solid rgba(221,177,42,.16);padding:18px;display:grid;gap:16px;background:var(--black)}.sidebar-foot span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-foot button{color:#bbb5aa;background:transparent;display:flex;gap:10px;align-items:center;font-weight:800;padding:0}.sidebar-toggle,.sidebar-backdrop{display:none}.workspace{min-width:0;min-height:100vh;margin-left:280px;overflow-x:hidden}.topline{height:60px;display:flex;align-items:center;gap:12px;padding:0 32px;border-bottom:1px solid var(--line);color:var(--muted);font-weight:900}.page{padding:34px 32px 80px}.page h1{display:flex;align-items:center;gap:12px;font-size:32px;margin:0 0 28px}.page h1 svg{color:var(--gold)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 28px}.page-heading h1{margin:0}.page-heading h1:has(.walking-heading){flex:1 1 auto;width:100%}.page-heading .toast-notice{margin:0;flex:0 1 auto}.panel{border:1px solid var(--line);border-radius:6px;padding:26px;background:#fff;box-shadow:0 2px 8px #281f100a;margin-bottom:24px}.panel h2{margin-top:0;font-size:24px}.help-text{color:var(--muted);line-height:1.6;margin:-8px 0 20px}.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(140px,1fr));gap:18px;margin-bottom:26px}.stat{position:relative;min-height:120px}.stat span{color:var(--muted);font-weight:800}.stat strong{display:block;font-size:34px;margin-top:10px}.stat svg{position:absolute;right:22px;top:32px;color:var(--gold)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:26px}.list-row,.product-row{display:flex;gap:14px;align-items:center;background:var(--soft);padding:14px;margin-bottom:12px}.list-row{align-items:flex-start}.list-row strong,.list-row span,.product-row strong,.product-row span{display:block}.list-row span,.product-row span{color:var(--muted);margin-top:4px}.product-row img{width:52px;height:52px;object-fit:cover;border-radius:4px}.product-row div,.with-action div{flex:1}.icon-button{width:38px;height:38px;display:inline-grid;place-items:center;color:#991b1b;background:#fff1f1;border-radius:4px}.with-action .row-actions,.product-row .row-actions,.walking-table .row-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex:0 0 auto;margin-left:auto}.icon-button.neutral{color:#3f3a33;background:#fff;border:1px solid var(--line)}.icon-button.edit{color:var(--gold-dark);background:#fff7dd}.icon-button:hover{filter:brightness(.97)}.notice{margin:-12px 0 20px;padding:12px 14px;border-radius:4px;font-weight:800}.notice.toast-notice{width:fit-content;max-width:min(420px,100%);margin:-12px 0 20px;padding:10px 14px;box-shadow:0 8px 22px #281f1014}.notice.success{color:#166534;background:#edf8ef;border:1px solid #bfe6c7}.notice.error{color:#991b1b;background:#fff1f1;border:1px solid #f3c7c7}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:22px;background:#0707068a}.modal-panel{width:min(640px,100%);max-height:min(86vh,760px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 28px 80px #0000004d}.modal-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:#fff;border-bottom:1px solid var(--line)}.modal-head h2{margin:0;font-size:24px}.modal-close{width:36px;height:36px;display:grid;place-items:center;color:var(--muted);background:var(--soft);border-radius:4px}.modal-form{display:grid;gap:16px;padding:24px}.modal-form label{color:#171615}.modal-form .check{display:flex}.modal-form input,.modal-form textarea{width:100%}.modal-image-preview,.detail-image{width:100%;max-height:240px;object-fit:cover;border:1px solid var(--line);border-radius:4px;background:var(--soft)}.modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:4px}.secondary-button{min-height:50px;padding:0 18px;color:#171615;background:var(--soft);border:1px solid var(--line);font-weight:900}.walking-heading{width:100%;display:flex;align-items:center;justify-content:space-between;gap:18px}.walking-heading-title{min-width:0;display:inline-flex;align-items:center;gap:12px}.walking-date-picker{position:relative;flex:0 0 auto;min-height:42px;display:inline-flex;align-items:center;gap:10px;padding:0 14px;color:#171615;background:var(--soft);border:1px solid var(--line);border-radius:4px;font-size:16px;font-weight:900;cursor:pointer}.walking-date-picker svg{color:var(--gold-dark)}.walking-date-picker input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.walking-date-picker:hover{border-color:var(--gold);background:#fffaf0}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:24px}.detail-item{min-width:0;display:grid;gap:8px;padding:14px;background:var(--soft);border:1px solid var(--line);border-radius:4px}.detail-item.wide{grid-column:1 / -1}.detail-item span{color:var(--muted);font-weight:900;font-size:13px}.detail-item strong{overflow-wrap:anywhere;line-height:1.5}.rate-form{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.product-form,.generic-form,.staff-form,.customer-form{display:grid;grid-template-columns:repeat(4,1fr) auto;gap:16px}.product-form textarea,.generic-form textarea{grid-column:1 / -1}.product-weight-grid{grid-column:1 / span 3;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.product-weight-grid input{width:100%}.modal-field-wide .product-weight-grid{grid-column:auto}.walking-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.walking-form label,.filter-grid label{min-width:0}.field-error{color:#b91c1c;font-size:13px;font-weight:800;line-height:1.35}.custom-field-panel{grid-column:1 / -1;display:grid;gap:12px;padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:4px}.custom-field-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.compact-button{min-height:40px;padding:0 14px}.muted-line{color:var(--muted);font-weight:700}.custom-field-row{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:center}.form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:12px}.records-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.records-head h2{margin:0}.records-head span{color:var(--muted);font-weight:900}.records-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:10px}.records-actions .secondary-button{min-height:40px;padding:0 12px;display:inline-flex;align-items:center;gap:8px}.records-branch-filter{min-height:40px;min-width:180px;padding:0 12px;font-weight:800}.filter-grid{display:grid;grid-template-columns:minmax(260px,1fr);gap:14px;margin-bottom:20px}.filter-grid label{width:min(520px,100%)}.filter-grid label:first-child{position:relative}.filter-grid label:first-child svg{position:absolute;left:12px;bottom:16px;color:var(--muted)}.filter-grid label:first-child input{padding-left:38px}.walking-table-wrap{width:100%;overflow-x:auto}.walking-table{width:100%;border-collapse:collapse;min-width:1180px}.walking-table th,.walking-table td{padding:13px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.walking-table th{background:var(--soft);color:var(--muted);font-size:13px;font-weight:900;white-space:nowrap}.walking-table td{line-height:1.45}.status-pill{display:inline-flex;min-width:42px;justify-content:center;padding:4px 9px;border-radius:999px;font-size:12px;font-weight:900}.status-pill.yes{color:#166534;background:#edf8ef;border:1px solid #bfe6c7}.status-pill.no{color:#991b1b;background:#fff1f1;border:1px solid #f3c7c7}.status-pill.pending{color:#8a5a05;background:#fff7dd;border:1px solid #ecd58b;text-transform:capitalize}.status-pill.approved{color:#166534;background:#edf8ef;border:1px solid #bfe6c7;text-transform:capitalize}.status-pill.rejected{color:#991b1b;background:#fff1f1;border:1px solid #f3c7c7;text-transform:capitalize}.tab-buttons{display:flex;gap:12px;margin:0 0 20px}.tab-buttons button{min-height:46px;padding:0 18px;background:var(--soft);color:#171615;border:1px solid var(--line);font-weight:900}.tab-buttons button.active{background:var(--gold);border-color:var(--gold)}.tag-generate-form{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.tag-generate-form textarea,.tag-generate-form .form-actions{grid-column:1 / -1}.tag-weight-grid{grid-column:1 / span 3;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}.tag-weight-section{position:relative;min-width:0}.tag-weight-control{position:relative}.tag-weight-display{width:100%;min-height:48px;padding:0 44px 0 14px;display:flex;align-items:center;justify-content:flex-start;color:var(--muted);background:#fff;border:1px solid var(--line);font-weight:400;text-align:left}.tag-weight-control>button:last-child{position:absolute;top:1px;right:1px;width:42px;height:calc(100% - 2px);min-height:0;padding:0;display:grid;place-items:center;color:var(--muted);background:transparent}.tag-weight-section.open .tag-weight-display{border-color:var(--gold);box-shadow:0 0 0 2px #ddb12a2e}.tag-weight-section.open .tag-weight-control svg{transform:rotate(180deg)}.tag-weight-dropdown{position:absolute;top:calc(100% + 4px);left:0;z-index:12;width:100%;display:grid;gap:0;border:1px solid var(--line);background:#fff;box-shadow:0 14px 34px #281f1024}.tag-weight-dropdown button{min-height:42px;padding:0 14px;justify-content:flex-start;color:var(--muted);background:#fff;border-bottom:1px solid var(--line);font-weight:400;text-align:left}.tag-weight-dropdown button:last-child{border-bottom:0}.tag-weight-dropdown button:hover{background:var(--soft);color:#171615}.net-weight-field{background:#fff;color:#171615;font-weight:400}.image-preview-field{grid-column:1 / -1;display:grid;gap:12px;font-weight:800}.image-preview-field input{width:min(360px,100%)}.image-preview-field img,.table-thumb{width:58px;height:58px;object-fit:cover;border-radius:4px;border:1px solid var(--line);background:var(--soft)}.image-preview-field img{width:130px;height:130px}.permission-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.check{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--line);padding:0 14px;min-height:48px}.small-check{min-height:42px;text-transform:capitalize}.check input{min-height:0}.staff-management-page{padding-top:34px}.staff-management-page h1{margin-bottom:28px}.staff-access-panel{padding:26px;margin-bottom:24px}.staff-access-panel h2{margin:0 0 10px;font-size:24px}.staff-access-panel .help-text{margin:0 0 20px}.staff-management-page .staff-form{grid-template-columns:repeat(4,minmax(0,1fr)) 120px;gap:16px;align-items:start}.staff-management-page .staff-form>input,.staff-management-page .staff-form>select{width:100%;min-height:48px}.staff-management-page .permission-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.staff-management-page .check{min-height:42px;padding:0 14px;gap:10px;font-weight:900}.staff-management-page .check input{width:13px;height:13px;padding:0;margin:0}.staff-management-page .staff-form>button{grid-column:1;width:100%;min-height:50px;margin-top:0}.staff-list-panel{padding:26px}.staff-list-panel .list-row{min-height:68px;padding:14px;margin-bottom:12px;align-items:center}.staff-list-panel .list-row:last-child{margin-bottom:0}.staff-list-panel .list-row strong{margin-bottom:2px}.table{display:grid}.table-head,.table-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr 100px;gap:16px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}.table-head{background:var(--soft);color:var(--muted)}.empty{min-height:180px;display:grid;place-items:center;color:var(--muted);font-weight:800}.shimmer-row{height:64px;margin-bottom:12px;background:linear-gradient(90deg,#eee8dd 25%,#faf7ef 40%,#eee8dd 65%);border-radius:4px}@media(max-width:1100px){.admin-shell{min-height:100vh}.sidebar{position:fixed;left:0;top:0;width:min(280px,86vw);transform:translate(-100%);transition:transform .22s ease;box-shadow:18px 0 44px #00000038}.workspace{margin-left:0}.sidebar.open{transform:translate(0)}.sidebar-toggle{width:38px;height:38px;min-height:38px;padding:0;display:inline-grid;place-items:center;color:#171615;background:var(--soft);border:1px solid var(--line);border-radius:4px}.sidebar-backdrop.show{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:block;background:#0707067a}.topline{position:sticky;top:0;z-index:20;padding:0 18px;background:#fff}.page{padding:26px 18px 70px}.stat-grid,.two-col,.rate-form,.product-form,.generic-form,.staff-form,.customer-form,.walking-form,.filter-grid{grid-template-columns:1fr}.product-weight-grid{grid-column:auto;grid-template-columns:1fr}.tag-generate-form{grid-template-columns:1fr}.tag-weight-grid{grid-column:auto;grid-template-columns:1fr}.tag-weight-dropdown{position:static;width:100%;margin-top:8px}.tab-buttons{flex-direction:column}.staff-management-page .staff-form,.staff-management-page .permission-grid{grid-template-columns:1fr}.staff-management-page .staff-form>button{grid-column:auto}.list-row.with-action{align-items:stretch}.product-row{flex-wrap:wrap}.with-action .row-actions,.product-row .row-actions,.walking-table .row-actions{justify-content:flex-start;margin-left:0}.custom-field-head,.custom-field-row,.form-actions,.records-head,.records-actions{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.custom-field-row{display:grid;grid-template-columns:1fr}.walking-table{min-width:0}.walking-table thead{display:none}.walking-table,.walking-table tbody,.walking-table tr,.walking-table td{display:block;width:100%}.walking-table tr{background:var(--soft);border:1px solid var(--line);margin-bottom:14px;padding:8px 0}.walking-table td{display:grid;grid-template-columns:120px 1fr;gap:12px;border-bottom:0;padding:9px 12px}.walking-table td:before{content:attr(data-label);color:var(--muted);font-weight:900}.detail-grid{grid-template-columns:1fr}.page-heading,.walking-heading{flex-direction:column;align-items:flex-start}.walking-heading-title{width:100%}.walking-date-picker{width:100%;justify-content:space-between}.page-heading .toast-notice{max-width:100%}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}
