:root{--ink:#272331;--muted:#77717f;--line:#e8e4ef;--bg:#f7f6f9;--surface:#fff;--nav:#251f35;--purple:#7757ce;--purple-soft:#f1edff;--pink:#c7517c;--green:#268b6b;--amber:#bd7417;--red:#b94754;--shadow:0 12px 32px rgba(43,31,67,.07)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.45 -apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",Meiryo,sans-serif}.app-shell{min-height:100vh;display:grid;grid-template-columns:225px minmax(0,1fr)}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{background:var(--nav);padding:24px 14px;display:flex;flex-direction:column;color:#d9d3e6}.brand{font-size:22px;font-weight:800;letter-spacing:.04em;padding:0 11px}.brand span{color:#c6b4ff}.brand small{display:block;color:#958da5;font-size:10px;letter-spacing:.12em}.shop{margin:25px 10px 18px;padding:11px 0;border-block:1px solid #3a334d}.shop strong,.shop small{display:block}.shop small{color:#9c95a8;font-size:11px;margin-top:2px}nav{display:grid;gap:4px}nav button{border:0;background:transparent;color:#c5bed4;border-radius:9px;padding:11px;text-align:left;display:flex;gap:11px;align-items:center}nav button:hover,nav button.active{background:#393047;color:white}nav i{font-style:normal;width:16px;text-align:center}.sidebar-note{margin-top:auto;background:#342c47;border-radius:10px;padding:13px;font-size:12px;line-height:1.55}.sidebar-note b,.sidebar-note span{display:block}.sidebar-note span{color:#c3bbd1;margin-top:5px}main{width:min(1410px,100%);margin:auto;padding:27px 34px 40px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.eyebrow{font-size:11px;font-weight:800;color:var(--purple);letter-spacing:.09em;margin:0}.topbar h1{font-size:25px;margin:2px 0}.head-actions{display:flex;gap:12px;align-items:center}.role-toggle{background:#e7e3ec;padding:4px;border-radius:10px}.role-toggle button{border:0;background:transparent;border-radius:7px;padding:7px 11px;color:#716a79;font-weight:700}.role-toggle button.active{background:white;color:var(--purple);box-shadow:0 1px 4px #cbc6d2}.user-chip{border:1px solid var(--line);background:white;padding:8px 11px;border-radius:8px;color:var(--ink)}.user-chip span{color:var(--muted);font-size:11px;margin-left:4px}.toolbar,.page-toolbar,.section-head,.filter-row{display:flex;align-items:center;gap:10px}.toolbar{margin-bottom:16px}.month-actions{display:flex;align-items:center;gap:8px}.month-actions strong{font-size:19px}.spacer{flex:1}.icon-button,.ghost-button,.text-button,.close-button{border:1px solid var(--line);background:white;border-radius:8px;padding:8px 11px;color:#554e5d}.icon-button{border-radius:50%;width:31px;height:31px;padding:0;font-size:19px}.text-button{border:0;padding:3px;color:var(--purple);background:transparent}.primary-button,.danger-button{border:0;border-radius:8px;padding:10px 13px;color:white;background:var(--purple);font-weight:700}.danger-button{background:var(--red)}.summary-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:14px;margin-bottom:18px}.card,.summary{background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow)}.summary{padding:15px 17px}.summary small,.summary span{display:block;color:var(--muted);font-size:12px}.summary b{font-size:25px;display:block;margin:4px 0}.summary.attention{display:flex;gap:11px;align-items:center}.summary.attention strong{display:block}.summary.attention p{font-size:12px;color:var(--muted);margin:3px 0}.summary-icon{background:#fff0d3;color:#ad6b10;font-weight:800;border-radius:8px;width:32px;height:32px;display:grid;place-items:center}.two-column{display:grid;grid-template-columns:minmax(560px,1fr) 305px;gap:18px}.calendar-card{padding:17px}.section-head{justify-content:space-between;margin-bottom:12px}.section-head h2,.page-toolbar h2{font-size:16px;margin:0}.legend{display:flex;gap:9px;color:var(--muted);font-size:11px}.legend-cast{color:var(--pink)}.legend-staff{color:var(--purple)}.legend-off{color:#9a94a1}.weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr)}.weekdays span{text-align:center;font-size:11px;color:#938d9e;padding:5px}.calendar-grid{border-top:1px solid var(--line);border-left:1px solid var(--line)}.calendar-day{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:105px;padding:6px;text-align:left;background:white;color:var(--ink);vertical-align:top}.calendar-day:hover{background:#fbfaff}.calendar-day.outside{color:#c4becb;background:#fcfbfd}.calendar-day.selected{outline:2px solid #b9a4e9;outline-offset:-2px}.date-number{font-size:12px;display:inline-grid;place-items:center;height:22px;min-width:22px}.date-number.is-today{border-radius:50%;background:var(--purple);color:#fff}.event{font-size:10px;line-height:1.25;border-radius:4px;margin-top:4px;padding:3px 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event.cast{color:#ae3f69;background:#fff0f5}.event.staff{color:#6042b4;background:#f1edff}.event.off{color:#77717f;background:#f1f0f3}.event.pending{color:#a76a16;background:#fff1dc}.right-rail{display:grid;gap:14px}.rail-card,.handoff-card{padding:15px}.shift-mini{display:flex;gap:9px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.shift-mini:first-child{border-top:0;padding-top:0}.avatar{height:31px;width:31px;border-radius:50%;display:grid;place-items:center;flex:none;color:white;background:#977cd8;font-size:11px;font-weight:800}.avatar.cast{background:#d978a1}.avatar.manager{background:#3aa483}.shift-mini b,.shift-mini small{display:block}.shift-mini small{font-size:11px;color:var(--muted);margin-top:2px}.pill{font-size:11px;border-radius:999px;padding:4px 7px;margin-left:auto;white-space:nowrap}.pill.confirmed{background:#e5f6ee;color:#23795d}.pill.pending{background:#fff0de;color:#ac6a16}.pill.off{background:#efedf1;color:#716c76}.handoff{border-top:1px solid var(--line);padding:9px 0}.handoff:first-of-type{border-top:0;padding-top:0}.handoff b{font-size:12px}.handoff p{margin:3px 0 0;font-size:12px;color:var(--muted)}.page{display:none}.page.active{display:block}.page-toolbar{justify-content:space-between;margin-bottom:17px}.page-toolbar p{color:var(--muted);margin:3px 0 0;font-size:13px}.list-card{padding:6px 18px}.shift-list-row{display:grid;grid-template-columns:80px 40px minmax(130px,1fr) 130px 100px 90px;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.shift-list-row:last-child{border-bottom:0}.shift-list-row small{color:var(--muted);display:block}.shift-list-row select{border:1px solid var(--line);border-radius:6px;background:white;padding:6px;width:100%}.filter-row{margin-bottom:14px}.filter-row select{border:1px solid var(--line);background:#fff;padding:8px;border-radius:8px}.record-list{display:grid;gap:10px}.record{background:#fff;border:1px solid var(--line);border-radius:11px;padding:14px 16px;display:grid;grid-template-columns:116px 1fr auto;gap:14px;align-items:start}.record-meta{font-size:11px;color:var(--muted)}.record h3{font-size:14px;margin:0 0 3px}.record p{margin:0;color:#5e5864;font-size:13px;white-space:pre-wrap}.tag{display:inline-block;font-size:11px;padding:3px 6px;border-radius:4px;background:var(--purple-soft);color:var(--purple);margin-bottom:6px}.record-actions{display:flex;gap:5px}.record-actions button{border:0;background:transparent;color:var(--purple);padding:3px}.table-card{overflow:auto}table{border-collapse:collapse;width:100%;min-width:650px}th,td{text-align:left;border-bottom:1px solid var(--line);padding:13px 16px}th{font-size:11px;color:var(--muted);font-weight:600}td small{display:block;color:var(--muted)}.member-name{display:flex;align-items:center;gap:9px}.member-actions{border:0;background:transparent;color:var(--purple)}.settings-card{padding:18px;max-width:630px;display:grid;gap:15px}.settings-card label{display:grid;gap:6px;font-size:12px;font-weight:700}.settings-card input[type=text]{border:1px solid var(--line);padding:9px;border-radius:7px}.settings-card .check-row{display:flex;gap:8px;align-items:center}.settings-actions{display:flex;gap:9px;margin-top:4px}dialog{border:0;border-radius:14px;width:min(480px,94vw);padding:0;box-shadow:0 25px 70px rgba(27,19,42,.3)}dialog::backdrop{background:rgba(22,17,32,.45)}#entry-form{padding:20px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.modal-head h2{font-size:18px;margin:0}.close-button{border:0;font-size:22px;padding:0;width:30px;height:30px}.field{display:grid;gap:5px;margin:11px 0}.field label{font-size:12px;font-weight:700;color:#5e5766}.field input,.field select,.field textarea{border:1px solid #ded8e7;border-radius:7px;padding:9px;width:100%;background:white}.field textarea{resize:vertical;min-height:75px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%) translateY(20px);background:#2d263d;color:#fff;padding:10px 15px;border-radius:9px;opacity:0;pointer-events:none;transition:.2s;z-index:10}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.mobile-nav{display:none}body.high-contrast{--bg:#edebf1;--line:#c9c2d2;--muted:#534d5b}@media(max-width:920px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}main{padding:19px 16px 80px}.two-column{grid-template-columns:1fr}.right-rail{grid-template-columns:1fr 1fr}.mobile-nav{position:fixed;bottom:0;left:0;right:0;z-index:4;display:flex;justify-content:space-around;background:var(--nav);padding:7px}.mobile-nav button{border:0;background:transparent;color:#cfc7da;display:grid;gap:2px;place-items:center;font-size:16px}.mobile-nav span{font-size:10px}.mobile-nav button.active{color:#cbbcff}}@media(max-width:600px){.topbar{align-items:flex-start}.topbar h1{font-size:20px}.user-chip{display:none}.role-toggle button{padding:7px 8px}.summary-grid{display:none}.toolbar{flex-wrap:wrap}.toolbar .spacer{display:none}.toolbar .primary-button{margin-left:auto}.two-column{display:block}.right-rail{display:grid;grid-template-columns:1fr;margin-top:13px}.calendar-card{padding:11px}.legend{display:none}.calendar-day{min-height:74px;padding:4px}.event{font-size:8px;padding:2px}.weekdays span{padding:4px 0}.page-toolbar{align-items:flex-start}.page-toolbar .primary-button{white-space:nowrap}.page-toolbar p{font-size:11px}.shift-list-row{grid-template-columns:52px 34px 1fr 80px;gap:6px}.shift-list-row .assignment{display:none}.record{grid-template-columns:1fr;gap:4px}.record-actions{position:absolute;right:16px}.record{position:relative;padding-right:70px}}
.crm-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:15px}.crm-summary article{padding:14px 16px}.crm-summary small,.crm-summary span{display:block;color:var(--muted);font-size:12px}.crm-summary b{font-size:21px;margin-top:3px;display:block}.line-status{display:grid;grid-template-columns:1fr auto;align-items:center}.line-status span{grid-column:1/-1}.line-status .text-button{justify-self:end}.customer-card{padding:14px 17px}.customer-tools{display:flex;gap:9px;margin-bottom:8px}.customer-tools input,.customer-tools select{border:1px solid var(--line);border-radius:7px;padding:8px;background:#fff}.customer-tools input{flex:1}.customer-row{display:grid;grid-template-columns:44px minmax(130px,1.1fr) minmax(110px,1fr) minmax(120px,1.2fr) 90px 52px;gap:10px;align-items:center;padding:12px 0;border-top:1px solid var(--line)}.customer-row:first-child{border-top:0}.profile-image{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#d7cafa;color:#564286;display:grid;place-items:center;font-weight:800}.customer-name b,.customer-name small,.customer-row small{display:block}.customer-name small,.customer-row small{color:var(--muted);font-size:11px}.customer-note{font-size:12px;color:#5e5864}.customer-action{border:0;background:transparent;color:var(--purple)}.line-settings h3{font-size:14px;margin:0}.line-settings p{font-size:12px;color:var(--muted);margin:4px 0 12px}.line-settings{display:grid;gap:10px}.line-settings label{margin:0}@media(max-width:600px){.crm-summary{grid-template-columns:1fr 1fr}.crm-summary .line-status{grid-column:span 2}.customer-row{grid-template-columns:40px 1fr 48px}.customer-row .customer-note,.customer-row .customer-meta,.customer-row .pill{display:none}.customer-tools{flex-wrap:wrap}.customer-tools input{min-width:100%}}
:root{--ink:#f7f1dc;--muted:#b9af92;--line:#493e25;--bg:#100e0a;--surface:#1a1710;--nav:#0b0a08;--purple:#c4a35a;--purple-soft:#2c2619;--pink:#d9b96c;--green:#39a875;--amber:#e7ba54;--red:#d75c5c;--shadow:0 12px 32px rgba(0,0,0,.35)}body{background:radial-gradient(circle at 70% 0,#28200e 0,var(--bg) 38%)}.card,.summary,.calendar-day,.icon-button,.ghost-button,.user-chip,.shift-list-row select,.filter-row select,.customer-tools input,.customer-tools select,.field input,.field select,.field textarea{background:var(--surface);color:var(--ink)}.sidebar{background:#080705}.brand span,.eyebrow,.text-button,.customer-action,.member-actions{color:#d9b96c}.role-toggle{background:#2a2418}.role-toggle button.active{background:#17130c;color:#f2d384;box-shadow:0 1px 5px #000}.primary-button{background:linear-gradient(135deg,#d9b96c,#9f792e);color:#151108}.danger-button{color:#fff}.summary-icon{background:#4a3917;color:#f3cf74}.calendar-day:hover{background:#252014}.calendar-day.outside{background:#14110c}.event.staff,.event.driver{background:#332713;color:#f0cc79}.event.cast{background:#39241e;color:#f0be9d}.event.off{background:#2d2a24;color:#b7b0a2}.event.pending{background:#413114;color:#edc568}.avatar.manager,.avatar.trial{background:#2e9f6c}.profile-image{background:#266f51;color:#e1f5e9}.tag{background:#3a301b;color:#e7c879}.pill.confirmed{background:#173c2e;color:#9de2bf}.pill.pending{background:#493619;color:#f0c56d}.pill.off{background:#302d28;color:#cbc4b5}.trial-card{margin-top:15px;padding:15px}.green-label{font-size:11px;color:#75d9a4;background:#173c2e;padding:4px 7px;border-radius:99px}.trial-row{display:grid;grid-template-columns:42px 1fr 110px 100px 100px 50px;gap:10px;align-items:center;border-top:1px solid var(--line);padding:12px 0}.trial-row:first-child{border-top:0}.trial-row b,.trial-row small{display:block}.trial-row small{color:var(--muted);font-size:11px}.companion{display:inline-block;font-size:10px;background:#4a3917;color:#f4d37e;padding:3px 6px;border-radius:4px;margin-left:6px}.button-pair{display:flex;gap:8px}@media(max-width:600px){.button-pair{display:grid;gap:5px}.trial-row{grid-template-columns:40px 1fr 52px}.trial-row .trial-time,.trial-row .trial-age{display:none}.head-actions #install-app{display:none}}
.procurement-card{margin-top:17px;padding:16px}.procurement-card .section-head p{margin:3px 0 0;color:var(--muted);font-size:12px}.procurement-legend{display:flex;gap:7px;margin-bottom:8px}.order-tag,.borrow-tag,.pending-tag{font-size:11px;padding:4px 7px;border-radius:4px}.order-tag{background:#443516;color:#f3d478}.borrow-tag{background:#243c4a;color:#acd9ee}.pending-tag{background:#49301b;color:#f0bd70}.procurement-row{display:grid;grid-template-columns:88px 1fr 65px 135px 1fr 48px;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.procurement-row b,.procurement-row small{display:block}.procurement-row small{font-size:11px;color:var(--muted)}.procurement-row .customer-action{justify-self:end}@media(max-width:600px){.procurement-row{grid-template-columns:78px 1fr 45px}.procurement-row .procure-partner,.procurement-row .procure-note,.procurement-row .customer-action{display:none}.procurement-card .section-head{align-items:flex-start}}
.store-picker{display:flex;align-items:center;gap:7px;margin-bottom:6px}.store-picker label{color:var(--muted);font-size:11px;font-weight:700}.store-picker select{border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);padding:6px 8px;font-weight:700}@media(max-width:600px){.store-picker label{display:none}.store-picker select{max-width:170px}}
.line-import-button{border-color:#76612e;color:#efd481}.line-import-help{font-size:12px;color:var(--muted);margin:2px 0 12px;padding:9px 10px;background:#272013;border-radius:7px}.line-import-preview{font-size:12px;color:#ead493;background:#221d12;border-left:3px solid #c4a35a;padding:8px 10px;margin-top:6px;line-height:1.55}@media(max-width:600px){.line-import-button{font-size:11px;padding:8px}.toolbar .line-import-button{margin-left:auto}.toolbar .line-import-button+.primary-button{margin-left:0}}
