:root{font:15px/1.5 Inter,Segoe UI,Arial,sans-serif;color:var(--theme-text, #25312d);background:var(--theme-subtle, #f3f5f1);--green:#244b3b;--muted:var(--theme-muted, #718078);--line:var(--theme-line, #dce2dc);--orange:#e17a36}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{touch-action:manipulation}a{color:var(--green)}button,.button{cursor:pointer;border:1px solid var(--line);background:var(--theme-surface, #fff);color:var(--theme-text, #263d32);border-radius:8px;padding:9px 15px;text-decoration:none;display:inline-block}button:hover,.button:hover{background:var(--theme-subtle, #eef2ed)}button:disabled{opacity:.5;cursor:default}button.primary,.button.primary{background:var(--green);color:white;border-color:var(--green)}button.danger{color:var(--theme-danger-text, #a94038)}button.small{padding:5px 10px;font-size:13px}input,select,textarea{padding:10px 12px;border:1px solid var(--theme-line, #ccd6cc);border-radius:7px;background:var(--theme-surface, #fff);color:var(--theme-text, #263d32);width:100%}textarea{min-height:110px}label{display:grid;gap:5px;font-size:13px;color:var(--theme-muted, #56645a)}form{display:grid;gap:15px}h1{font-size:32px;letter-spacing:-1px;font-weight:600;margin:0 0 8px}h2{font-size:19px;margin:0 0 16px}h3{font-size:15px;margin:0 0 10px}p{margin:8px 0 16px}.muted,small{color:var(--muted)}.top{height:77px;background:var(--theme-surface, #fff);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px}.brand{font-size:27px;letter-spacing:3px;font-weight:800;text-decoration:none;display:flex;gap:26px;align-items:center}.brand span{font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted)}#identity{display:flex;gap:16px;align-items:center;font-size:13px}.shell{max-width:1440px;margin:32px auto;padding:0 32px}.heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:28px}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:1.7px;color:var(--muted);margin-bottom:8px}.card{background:var(--theme-surface, white);border:1px solid var(--line);border-radius:12px;padding:24px;margin-bottom:20px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.cols{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr);gap:22px}.stats{display:flex;gap:50px}.stat strong{font-size:32px;font-weight:500;display:block}.tabs{display:flex;gap:8px;border-bottom:1px solid var(--line);padding:0 0 15px;margin-bottom:24px}.tabs button{border:none;background:transparent}.tabs button.active{background:var(--green);color:white}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.badge{font-size:12px;border-radius:5px;padding:4px 8px;background:var(--theme-subtle, #edf2eb);color:var(--theme-text, #44644b);white-space:nowrap}.badge.warning{background:var(--theme-accent-soft, #fff0de);color:var(--theme-accent-text, #95622b)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th{text-align:left;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.6px;font-weight:500;padding:12px;border-bottom:1px solid var(--line)}td{padding:16px 12px;border-bottom:1px solid var(--theme-line, #edf0eb)}tr:last-child td{border:none}td a{font-weight:600}.search{max-width:380px}.empty{padding:55px;text-align:center;color:var(--muted)}.login{max-width:450px;margin:70px auto}.login .brand{margin-bottom:40px}.notice{padding:12px 16px;background:var(--theme-accent-soft, #fff4e4);border:1px solid var(--theme-accent-line, #ead9b9);border-radius:7px;margin:12px 0;font-size:13px}.money{font-size:25px;color:var(--green)}.strike{text-decoration:line-through;color:var(--muted);font-size:15px}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 22px;background:var(--theme-surface, #fff);border-bottom:1px solid var(--line);gap:12px;flex-wrap:wrap}.editor-frame{display:block;border:0;width:100%;height:calc(100vh - 148px);background:var(--theme-canvas, #273037)}.modal-back{position:fixed;inset:0;background:#18272088;display:flex;align-items:center;justify-content:center;z-index:10000;padding:20px}.modal{background:var(--theme-surface, #fff);border-radius:14px;padding:28px;max-width:580px;width:100%;max-height:90vh;overflow:auto}.modal h2{margin-bottom:20px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:10px}#flash{position:fixed;right:22px;bottom:22px;z-index:20000;max-width:520px;white-space:pre-wrap}#flash:not(:empty){padding:16px 20px;background:var(--theme-accent-soft, #213f31);color:white;border-radius:10px;box-shadow:0 5px 22px #0003}.event{padding:12px 0;border-bottom:1px solid var(--line)}.event small{display:block}.split-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{width:auto}.inline{display:flex;align-items:center;gap:10px}.catalog-list{max-height:520px;overflow:auto}.salon-link{word-break:break-all}pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:var(--theme-muted, #56645a)}details{margin:14px 0}summary{cursor:pointer}.loading{opacity:.6;pointer-events:none}@media(max-width:850px){.top{padding:0 16px;height:65px}.brand span{display:none}.shell{padding:0 16px;margin-top:20px}.grid,.cols{grid-template-columns:1fr}.heading{flex-direction:column;gap:12px}h1{font-size:26px}.stats{gap:25px}.card{padding:18px}.editor-frame{height:calc(100dvh - 165px)}.login{margin:35px 16px}.tabs{overflow:auto}.top #identity{font-size:11px;gap:8px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.badge.unpaid{background:var(--theme-subtle, #eceeed);color:var(--theme-muted, #737975)}

.project-title{display:flex;align-items:center;gap:12px;margin-bottom:8px}.project-title h1{margin:0}.back-arrow{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0;font-size:24px;line-height:1}

.quote-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.quote-fields label{min-width:0;align-content:end}.money-input{position:relative;display:block;width:100%}.money-input input{height:44px;min-width:0;padding:10px 32px 10px 12px;appearance:textfield;-moz-appearance:textfield}.money-input input::-webkit-inner-spin-button,.money-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.money-suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none}

.quote-discount-field{display:grid;gap:5px;min-width:0;align-content:end}.quote-discount-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:20px}.discount-toggle{appearance:none;-webkit-appearance:none;flex:0 0 32px;width:32px;height:18px;margin:0;padding:2px;border:0;border-radius:10px;background:var(--theme-canvas, #cbd2ce);cursor:pointer}.discount-toggle::before{content:"";display:block;width:14px;height:14px;border-radius:50%;background:var(--theme-surface, #fff);box-shadow:0 1px 2px #0002}.discount-toggle:checked{background:var(--green)}.discount-toggle:checked::before{transform:translateX(14px)}.discount-toggle:focus-visible{outline:2px solid var(--green);outline-offset:3px}.money-input input:disabled{background:var(--theme-subtle, #edf0ed);color:var(--theme-muted, #8a938c);cursor:not-allowed}

.order-with-cancel{padding-bottom:80px}.order-cancel-corner{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:100}.order-cancel-corner button{box-shadow:0 2px 12px #00000014}

.responsible-row{margin:8px 0 16px;gap:12px}

.order-checklist fieldset{border:0;padding:0;margin:0;min-width:0}.checklist-row{display:flex;align-items:center;gap:12px;font-size:15px;color:inherit;padding:14px 0}.checklist-row input{flex:0 0 18px;width:18px;height:18px;margin:0;accent-color:var(--green)}.checklist-item{border-top:1px solid var(--line);padding:4px 0 18px}.checklist-item h3{margin:14px 0 12px}.checklist-fields{display:grid;gap:12px;padding-left:30px}.checklist-fields button{justify-self:start}.checklist-fields input{max-width:300px}.checklist-fields textarea{min-height:84px}.checklist-fields [hidden]{display:none}.approval-check{border-top:1px solid var(--line)}.checklist-note{display:block;padding-left:30px}.checklist-save{font-size:12px;color:var(--muted);margin:12px 0}.order-checklist [data-checklist-retry]{margin-bottom:12px}

.order-checklist [hidden]{display:none!important}

.checklist-disabled{color:var(--theme-muted, #9aa29d);cursor:not-allowed}.checklist-disabled input{cursor:not-allowed}.order-checklist .checklist-fields input[name="address"]{max-width:none}.production-check{margin-top:16px}

.payment-disabled{opacity:.5;color:var(--muted)}

.projects-heading{align-items:center;flex-direction:row}.projects-heading h2{margin:0}.projects-heading .search{margin-left:auto;min-width:0;width:380px}@media(max-width:600px){.projects-heading{flex-wrap:wrap}.projects-heading .search{width:100%;max-width:none}}

th .table-sort{font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;padding:0;border:0;border-radius:3px;background:transparent;text-align:left;display:inline-flex;align-items:center;gap:7px}th .table-sort:hover{color:var(--green);background:transparent}th .table-sort:focus-visible{outline:2px solid var(--green);outline-offset:4px}th[aria-sort] .table-sort::after{content:"↕";opacity:.4}th[aria-sort="ascending"] .table-sort::after{content:"↑";opacity:1}th[aria-sort="descending"] .table-sort::after{content:"↓";opacity:1}

.material-swatch{display:block;width:44px;height:44px;border:1px solid #0002;border-radius:7px;box-shadow:inset 0 0 0 1px #ffffff40}

.material-swatch{object-fit:cover}
.material-appearance{display:grid;gap:10px;margin:12px 0}.material-appearance input[type=color]{width:100%;height:42px;padding:3px}.material-preview .material-swatch{width:96px;height:96px}.material-appearance [data-remove-texture]{justify-self:start}

.materials-heading{flex-direction:row;align-items:flex-start}.materials-title{display:flex;align-items:center;gap:10px;margin-bottom:8px}.materials-title h2{margin:0}.material-add{width:32px;height:32px;padding:0;font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.materials-heading .search{margin-left:auto;width:380px;min-width:0}@media(max-width:600px){.materials-heading{flex-wrap:wrap}.materials-heading .search{width:100%;max-width:none}}

.table-heading{flex-direction:row;align-items:center}.table-title{display:flex;align-items:center;gap:10px}.table-title h2{margin:0}.table-add{width:32px;height:32px;padding:0;font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.table-heading .search{margin-left:auto;width:380px;min-width:0;flex:0 1 380px}.payment-quote-action{margin:-10px 0 20px}.table-wrap [hidden]{display:none}@media(max-width:600px){.table-heading{flex-wrap:wrap}.table-heading .search{width:100%;max-width:none;flex-basis:100%}}

.salon-link-cell{display:flex;align-items:center;gap:8px}.copy-salon-link{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:6px;flex-shrink:0}

.production-steps{display:flex;gap:28px;flex-wrap:wrap;padding:0;list-style:none;margin:0 0 28px;counter-reset:production}.production-steps li{color:var(--muted);display:flex;align-items:center;gap:10px;counter-increment:production}.production-steps li::before{content:counter(production);border:1px solid var(--line);border-radius:50%;width:30px;height:30px;display:grid;place-items:center}.production-steps li.reached{color:var(--green)}.production-steps li.reached::before{background:var(--green);color:white}.production-steps [aria-current]{font-weight:600}

.production-checklist{display:grid;gap:20px;margin-top:20px}.production-check{display:flex;align-items:center;gap:10px;font-size:15px;color:inherit}.production-check input{width:18px;height:18px;margin:0;accent-color:var(--green)}

.show-shipped{display:flex;align-items:center;gap:9px;margin:0 0 16px;font-size:14px;color:inherit;width:fit-content;cursor:pointer}

.project-price-before{display:block;font-size:14px;font-weight:600;white-space:nowrap}.project-price-after{display:block;font-size:12px;white-space:nowrap;margin-top:3px}

.salon-settings-page form{max-width:720px;gap:18px}.salon-settings-link{margin-bottom:24px}.salon-settings-link .salon-link-cell{margin-top:6px;overflow-wrap:anywhere}.salon-settings-page textarea{min-height:140px}
.material-bulk-bar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.material-select-cell{width:44px}.material-select-cell input,.bulk-field-check input{width:18px;height:18px;margin:0;accent-color:var(--green)}.material-selected{background:var(--theme-subtle, #edf5f0)}.bulk-field{display:grid;gap:8px}.bulk-field-check{display:flex;align-items:center;gap:9px;margin:0}
.material-usage{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;border:1px solid var(--line);border-radius:10px;padding:14px;margin:0;min-width:0}.material-usage legend{padding:0 5px;font-size:14px}.material-usage label{display:flex;align-items:center;gap:9px;margin:0}.material-usage input{width:18px;height:18px;margin:0;accent-color:var(--green)}.material-usage:disabled{opacity:.5}@media(max-width:480px){.material-usage{grid-template-columns:1fr}}

.language-switcher{width:auto;min-width:115px;margin:0;padding:7px 10px;font:inherit;}

select:not([multiple]){appearance:none;-webkit-appearance:none;padding-left:12px;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2377706b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;}
select.language-switcher{padding-left:10px;padding-right:34px;background-position:right 10px center;}

/* Native customizable selects keep form and keyboard behaviour. */
@supports (appearance: base-select) {
  select:not([multiple]), select:not([multiple])::picker(select) { appearance: base-select; }
  select:not([multiple]) { background-image: none; padding-right: 11px; align-items: center; gap: 12px; }
  select:not([multiple])::picker-icon { content: ""; width: 7px; height: 7px; margin-left: auto; margin-right: 3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); color: var(--theme-muted, #77706b); }
  select:not([multiple])::picker(select) { background: var(--theme-surface, #fff); border: 1px solid var(--theme-line, #e4ddd8); border-radius: 8px; padding: 4px; margin-top: 5px; box-shadow: 0 6px 20px #35291f18; }
  select:not([multiple]) option { display: flex; align-items: center; gap: 16px; padding: 8px 11px; border-radius: 5px; color: var(--theme-text, #352e29); background: var(--theme-surface, #fff); font-weight: 400; cursor: pointer; }
  select:not([multiple]) option:hover, select:not([multiple]) option:focus, select:not([multiple]) option:checked { background: var(--theme-subtle, #f2e9e3); color: var(--theme-danger-text, #76513f); outline: none; }
  select:not([multiple]) option:disabled { opacity: .45; cursor: default; }
  select:not([multiple]) option::checkmark { order: 2; margin-left: auto; color: var(--theme-muted, #947363); content: "✓"; font-size: 15px; }
}
