:root{--paper:#fff7eb;--card:#fffdf8;--ink:#241c19;--muted:#746257;--line:#efd8bd;--red:#d8471f;--redwash:#ffe4de;--green:#16803c;--greenwash:#eaf8ef;--gold:#c86d18;--shadow:0 16px 42px #8548131f}
body{background:linear-gradient(180deg,#fff7eb,#fffaf4 38%,#fff8ef)}
.brand-mark{display:block;flex-shrink:0;object-fit:contain;background:transparent;border-radius:0}
input[type=radio]{width:auto}
button:hover{background:#fff0dc}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:#f28a24}button.primary{background:var(--red);border-color:var(--red)}button.primary:hover{background:#b83a18}a,.eyebrow{color:var(--red)}
input,select,textarea{border-color:#efd8bd;background:#fffdfa}.sidebar{background:#fff2dd}.nav button{color:#7a5540}.nav button.active{background:#fffdf8;color:var(--red)}.topbar{background:#fffaf4}.avatar{background:#ffe5ba;color:#7a431c}.store-dot{background:#f28a24}
.badge{background:#fff0d7;color:#9a561d}.badge.gold{background:#fff0d2;color:#a55d15}.demo-banner{background:#fff0d2;color:#8d541d}.card{box-shadow:0 2px 8px #8548130b}.clock-card{background:linear-gradient(150deg,#fffdf8,#fff1db)}.clock-card:before{border-color:#f5d9ad}.clock-seconds{color:#d79a57}.location.good{border-color:#b7d6bc;background:#eef8ed}.location.bad{color:#b54829;background:#fff0e8;border-color:#f2c5b5}.day-square{background:#fff0d7}.tabs{background:#fff0dc}.tabs button.active{background:#fffdf8}.progress{background:#ffe6c5}.progress-bar{background:#f28a24}.inline-help{background:#fff0dc;color:#875022}.request-detail{background:#fff7eb}.login-art{background:linear-gradient(145deg,#fff1a8,#f6b642 28%,#f28a24 62%,#9d3b14);color:#fff8df}.login-art p{color:#fff2df}.login-ornament{color:#ffe4b7}.login-art footer small{color:#ffe4b7}.login-panel{background:#fffaf4}#toast{background:#66351e}.settings-grid .card h2,.card-head h2{color:#6a351c}
.matrix-cell.selected{outline:3px solid #d8471f;outline-offset:-3px;position:relative;z-index:2}.matrix-wrap{user-select:none}
.matrix-wrap{border-color:#2b2b2b;border-radius:4px;box-shadow:none}
.hour-matrix th{height:34px;padding:4px 3px;background:#fff;font-size:12px;font-weight:650;border-right-color:#6d726d}
.hour-matrix thead tr:first-child>th{height:38px;font-size:13px;font-weight:750}
.hour-matrix th:first-child,.hour-matrix td:first-child{width:132px;min-width:132px}
.hour-matrix thead tr:nth-child(2)>th:first-child{position:static;left:auto;z-index:auto;box-sizing:border-box;width:34px;min-width:0;text-align:center;padding-left:3px;border-right:1px solid #6d726d}
.hour-matrix td{height:31px;border-right-color:#2b2b2b;border-bottom-color:#2b2b2b}
.hour-matrix .day-slot{width:34px;min-width:34px;height:31px}
.matrix-cell{height:30px;min-width:33px}
.hour-matrix td:first-child strong{font-size:12px}
.schedule-matrix .matrix-cell{font-size:9px}
.schedule-matrix .matrix-cell.inside:after{content:''}
.schedule-matrix .matrix-cell.available{background:#eef7eb}
.schedule-matrix .matrix-cell.default-available{background:#fff9ef}
.schedule-matrix .matrix-cell.shift-start,.schedule-matrix .matrix-cell.shift-end{position:relative;overflow:hidden}
.schedule-matrix .matrix-cell.shift-start:before,.schedule-matrix .matrix-cell.shift-end:after{position:absolute;z-index:1;padding:1px 2px;border-radius:2px;background:#fffffff0;color:#201b18;font-size:8px;font-weight:750;line-height:1.15;white-space:nowrap;pointer-events:none}
.schedule-matrix .matrix-cell.shift-start:before{content:attr(data-start-time);left:1px;top:1px}
.schedule-matrix .matrix-cell.shift-end:after{content:attr(data-end-time);right:1px;bottom:1px;border-right:2px solid #215f2b}
.schedule-matrix .matrix-cell.close.shift-end:after{border-right-color:#b71919}
.fill-palette{display:flex;gap:6px;align-items:center;padding:4px 7px;background:#fff0dc;border-radius:10px}.fill-color{min-height:32px;padding:0 10px;border:1px solid #d3b88e;border-radius:7px;font-size:11px;color:#3e2a1c}.fill-color.work{background:#a9d18e}.fill-color.close{background:#ff2b2b;color:#fff;border-color:#e12727}.fill-color.optional{background:#fff200}.fill-color.off{background:#fff}@media(max-width:730px){.fill-palette{width:100%;overflow:auto}.fill-color{flex:0 0 auto}}
