:root{--purple:#4b0750;--purple-dark:#2c0630;--purple-soft:#f2eaf3;--ink:#22232a;--muted:#70717d;--line:#e7e7ed;--bg:#f5f6f9;--white:#fff;--green:#277052;--amber:#956000;--radius:14px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 -apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",sans-serif}a{color:var(--purple);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:30px;line-height:1.35;margin:6px 0 0;letter-spacing:.02em}h2{font-size:20px;line-height:1.5;margin-bottom:18px}h3{font-size:18px;margin-bottom:8px}small{display:block;font-size:13px;line-height:1.6;color:var(--muted)}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:white;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:10;padding:30px 20px}.brand{display:block;padding:0 8px 28px}.brand img{width:180px;height:48px;object-fit:contain}.brand span{display:block;color:var(--muted);font-size:13px;margin-top:10px;letter-spacing:.08em}.side-label{color:#93939d;font-size:12px;padding:20px 14px 12px;letter-spacing:.12em}.sidebar nav{display:grid;gap:6px}.sidebar nav a{font-size:14px;color:#62636e;padding:12px 14px;border-radius:9px;font-weight:500}.sidebar nav a span{display:inline-block;width:22px;font-size:18px;margin-right:7px}.sidebar nav a.active{color:var(--purple);background:var(--purple-soft);font-weight:700}.sidebar nav a:hover{background:#f5f2f6;text-decoration:none}.side-bottom{margin-top:auto;padding:24px 12px 0;border-top:1px solid var(--line);font-size:13px}.side-bottom p{font-size:15px;color:var(--ink);margin-bottom:8px}.side-bottom a{display:block;margin-top:8px}.workspace{margin-left:248px}.topbar{height:78px;background:rgba(255,255,255,.93);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 36px;font-size:14px}.topbar>div{display:flex;align-items:center;gap:14px}.topbar form{margin:0}.sep{padding:0 14px;color:#c4c4cf}.topbar>span{color:#777985}.topbar strong{font-size:14px}main{padding:32px 36px 48px;max-width:1600px;margin:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px;gap:20px}.eyebrow{font-size:12px;color:var(--purple);font-weight:700;letter-spacing:.14em}.badge{font-size:12px;padding:4px 9px;border-radius:5px;background:#eeedf2;color:#62616e;display:inline-block;white-space:nowrap;font-weight:500}.badge.good{background:#e9f3ed;color:var(--green)}.badge.warning{background:#fff1d9;color:var(--amber)}.button{background:var(--purple);color:white;border:1px solid var(--purple);border-radius:8px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:14px;font-weight:600;min-height:44px;white-space:nowrap}.button:hover{background:var(--purple-dark);text-decoration:none}.button.secondary{background:white;color:var(--purple);border-color:#d7c8da}.button.secondary:hover{background:var(--purple-soft)}.button.danger{background:white;color:#9e3d48;border-color:#e4c5ca}.button.large{padding:13px 26px;font-size:16px}.text-button{border:0;background:none;color:var(--purple);padding:6px;font-size:14px}.panel{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:24px}.panel>h2{margin-bottom:20px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.section-heading h2{margin:0}.section-heading p{color:var(--muted);font-size:14px;margin:4px 0 0}.section-heading>span,.section-heading>a{font-size:14px}.lead{color:var(--muted);margin-bottom:24px}.context-line{display:flex;justify-content:space-between;gap:16px;font-size:14px;color:var(--muted);margin:0 0 20px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:24px}.metrics article{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:22px}.metrics article>span{font-size:14px;color:var(--muted)}.metrics article>strong{display:block;font-size:38px;font-weight:650;line-height:1.4;margin:8px 0 9px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.metrics em{font-size:14px;font-style:normal;color:var(--muted);margin-left:7px;font-weight:400}.metrics .accent{background:var(--purple);border-color:var(--purple);color:white}.metrics .accent>span,.metrics .accent small{color:#dcc4df}.metrics .money-value{font-size:28px;letter-spacing:-.02em}.two-panels{display:grid;grid-template-columns:1.35fr 1fr;gap:24px}.bar-chart{height:215px;display:flex;gap:20px;padding-top:4px;align-items:flex-end}.bar-col{flex:1;text-align:center;max-width:80px;font-size:13px}.bar-col>strong{display:block;font-size:14px;font-variant-numeric:tabular-nums}.bar-track{height:150px;display:flex;align-items:flex-end;justify-content:center;margin-top:4px}.bar{width:65%;background:var(--purple);border-radius:5px 5px 0 0;min-height:2px}.bar-col>span{display:block;color:var(--muted);padding-top:8px;border-top:1px solid var(--line)}.brand-row{margin:0 0 17px}.brand-row>div:first-child{display:flex;justify-content:space-between;font-size:14px;margin-bottom:6px}.brand-row strong{font-weight:500}.meter{height:5px;background:#f0ebf2;border-radius:5px}.meter>span{display:block;height:5px;border-radius:5px;background:#9a669e}.fee-summary{border-top:1px solid var(--line);margin-top:18px;padding-top:16px}.fee-summary>span{font-size:14px;color:var(--muted)}.fee-summary>strong{display:block;font-size:25px;color:var(--purple);font-variant-numeric:tabular-nums}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{background:#fafafd;font-size:13px;font-weight:600;color:#70717d;padding:12px 14px;border-bottom:1px solid var(--line);white-space:nowrap}td{padding:15px 14px;border-bottom:1px solid #efeff4;vertical-align:top}tr:last-child td{border-bottom:0}td strong{font-size:14px;font-weight:600}td small{margin-top:3px}td .source{font-size:12px;max-width:210px;color:#8c8b98}.number{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.empty{text-align:center;color:var(--muted);padding:48px}.tall{max-height:620px}.tall th{position:sticky;top:0}.notice{background:#f1edf5;border-left:3px solid var(--purple);padding:15px 18px;border-radius:0 8px 8px 0;margin:20px 0;font-size:14px;line-height:1.8}.notice.warning{background:#fff7e8;border-color:#bf8b28}.warning-text{color:var(--amber)}.filters{display:flex;gap:14px;align-items:flex-end;margin-bottom:24px;flex-wrap:wrap}.filters .wide{flex:1;min-width:210px}label{display:flex;flex-direction:column;gap:7px;font-size:14px;color:#4e4e59;font-weight:500}input,select,textarea{border:1px solid #dcdce5;border-radius:7px;padding:10px 12px;background:white;color:var(--ink);width:100%;min-height:44px;font-size:15px}input:focus,select:focus,textarea:focus{outline:2px solid #b186b5;outline-offset:1px}input[type=checkbox]{width:19px;min-height:19px;accent-color:var(--purple)}.check{display:flex;flex-direction:row;align-items:flex-start;gap:12px;margin-bottom:12px}.search-box{max-width:420px;margin-bottom:22px}.intro-split{display:grid;grid-template-columns:1.3fr 1fr;background:white;border:1px solid var(--line);border-radius:16px;margin-bottom:28px;padding:30px;gap:40px}.intro-split h2{font-size:30px;line-height:1.6;letter-spacing:.04em;margin-bottom:12px}.intro-split p{color:var(--muted);font-size:15px}.intro-note{border-left:1px solid var(--line);padding:10px 0 10px 35px}.intro-note h3{margin-top:12px}.inline-badges{display:flex;gap:8px;flex-wrap:wrap}.role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.role-card{padding:25px;background:white;border:1px solid var(--line);border-radius:14px;display:flex;flex-direction:column;align-items:stretch}.role-index{font-size:13px;letter-spacing:.08em;color:#a17ca5;margin-bottom:13px}.role-card p{font-size:14px;color:var(--muted);min-height:48px}.role-card label{margin-bottom:16px}.role-card .button{margin-top:auto}.role-card:first-child{border-top:4px solid var(--purple)}.steps{display:flex;gap:24px;margin-bottom:26px;border-bottom:1px solid var(--line);font-size:14px;color:var(--muted)}.steps>span{padding:0 0 14px}.steps .current{color:var(--purple);font-weight:700;border-bottom:3px solid var(--purple)}.booking-form{max-width:970px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.full{grid-column:1/-1}.package-row{background:#f5eff6;border:1px solid #e8d9ea;border-radius:9px;padding:18px;margin:22px 0 12px;display:flex;align-items:center;justify-content:space-between;gap:20px}.package-row label{width:90px;flex-shrink:0}.package-row strong{font-size:16px}.quantity-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.quantity-grid label{background:#fafafd;padding:12px;border:1px solid var(--line);border-radius:8px}.subtle{font-size:14px;color:var(--muted)}.add-person{width:100%;margin-bottom:24px;border-style:dashed!important}.button-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.total{display:flex;justify-content:space-between;align-items:center;border-top:2px solid var(--purple);padding-top:18px;margin-top:20px}.total strong{font-size:25px;color:var(--purple)}.detail-banner{display:flex;justify-content:space-between;align-items:center;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:22px}.detail-banner h2{margin:8px 0 3px}.detail-banner p{margin:0;color:var(--muted);font-size:14px}.detail-banner>div:last-child{display:flex;gap:14px;align-items:center}.detail-columns{grid-template-columns:1.6fr 1fr}.person-summary{padding:0 0 25px;margin-bottom:20px;border-bottom:1px solid var(--line)}.person-summary:last-child{border:0;margin:0}.person-summary h3>span{font-weight:400;font-size:14px;margin-left:9px;color:var(--muted)}.compact td,.compact th{padding:9px}.facts{margin:0}.facts>div{display:flex;justify-content:space-between;gap:20px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.facts>div:last-child{border:0}.facts dt{color:var(--muted);flex-shrink:0}.facts dd{margin:0;text-align:right;overflow-wrap:anywhere}.timeline{padding-left:20px;margin-bottom:0}.timeline li{padding:0 0 18px 8px;font-size:14px}.timeline li::marker{color:#9a669e}.narrow{max-width:480px;margin:45px auto;padding:36px}.stack{display:grid;gap:20px}.login-logo{width:220px;margin:0 0 26px;display:block}.prose{max-width:900px}.prose h3{margin-top:30px}.reading-list{padding-left:20px;font-size:15px}.reading-list li{margin:12px 0}.mail{max-width:950px}.mail pre{white-space:pre-wrap;word-break:break-word;font:15px/1.9 inherit;border-top:1px solid var(--line);padding-top:22px;color:var(--ink)}#mail-actions{margin:20px 0}.mono{font-family:ui-monospace,monospace}footer{font-size:12px;color:#93939d;text-align:center;padding:8px 20px 26px}footer span{padding:0 10px}@media(min-width:1500px){.bar-chart{gap:28px}.bar-col{max-width:110px}}@media(max-width:1150px){.sidebar{width:212px;padding:25px 12px}.brand img{width:165px}.workspace{margin-left:212px}main{padding:28px 24px}.topbar{padding:0 24px}.metrics{grid-template-columns:repeat(2,1fr)}.two-panels{grid-template-columns:1fr}.role-grid{grid-template-columns:repeat(2,1fr)}.detail-columns{grid-template-columns:1fr}.bar-chart{justify-content:space-around}.role-card p{min-height:0}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:14px 18px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0 0 10px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand img{width:135px;height:38px}.brand span{font-size:11px;margin:0}.side-label,.side-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px;white-space:nowrap}.sidebar nav a{font-size:13px;padding:8px 10px}.sidebar nav a span{display:none}.workspace{margin:0}.topbar{height:58px;padding:0 18px}.topbar>span{display:none}.topbar>div{width:100%;justify-content:space-between}.topbar .badge{font-size:11px}main{padding:24px 16px}h1{font-size:25px}.eyebrow{font-size:10px}.page-heading{align-items:flex-start;flex-wrap:wrap}.metrics{gap:12px}.metrics article{padding:17px 14px}.metrics article>strong{font-size:31px}.metrics .money-value{font-size:21px}.metrics small{font-size:11px}.panel{padding:18px;border-radius:11px}.context-line{flex-direction:column;gap:8px}.two-panels{gap:0}.intro-split{grid-template-columns:1fr;gap:18px;padding:22px}.intro-split h2{font-size:26px}.intro-note{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.role-grid{grid-template-columns:1fr}.role-card{padding:22px}.form-grid,.form-grid.three{grid-template-columns:1fr}.quantity-grid{grid-template-columns:repeat(2,1fr)}.steps{gap:14px;font-size:12px}.package-row{padding:14px;align-items:flex-start}.package-row label{width:75px}.detail-banner{padding:18px;align-items:flex-start;gap:20px;flex-direction:column}.detail-banner>div:last-child{width:100%;justify-content:space-between}.filters>label{min-width:42%;flex:1}.filters>.button{flex:1}.section-heading{align-items:flex-start}.narrow{margin:15px auto;padding:25px}.bar-chart{gap:12px}.bar-col{font-size:12px}.facts>div{gap:12px}.notice{font-size:14px}.reading-list{font-size:14px}.table-wrap table{min-width:690px}.compact{min-width:0}.compact td{font-size:13px}.person-summary{overflow-x:auto}}@media(prefers-reduced-motion:no-preference){.button,.sidebar nav a{transition:background .15s}.panel{animation:appear .22s ease-out}@keyframes appear{from{opacity:.8;transform:translateY(3px)}to{opacity:1;transform:none}}}

/* Standalone presentation guide, intentionally distinct from the service workspace. */
.demo-guide{background:#201b29;color:#f8f5fa}.guide-header{max-width:1280px;margin:auto;padding:30px 36px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid #ffffff20}.guide-logo{display:block;background:#fff;border-radius:8px;padding:8px 16px;line-height:0}.guide-logo img{width:155px;height:40px;object-fit:contain}.guide-header>span{font-size:13px;color:#c5b7ce}.guide-header b{margin-left:24px;font-size:11px;letter-spacing:.15em;color:#eee3f5}.guide-main{max-width:1280px;padding:56px 36px 24px}.guide-hero{display:grid;grid-template-columns:1.7fr 1fr;gap:72px;padding-bottom:50px}.guide-kicker{font-size:13px;letter-spacing:.18em;color:#c8a9d1;margin-bottom:20px}.guide-hero h1{font-size:44px;line-height:1.4;letter-spacing:.06em;margin-bottom:24px}.guide-hero p{color:#c0b7c7;font-size:15px;line-height:1.9}.guide-data{padding:26px 30px;border:1px solid #ffffff20;border-radius:16px;background:#ffffff05;align-self:center}.guide-data>span{font-size:13px;color:#bdaec5}.guide-data>div{border-bottom:1px solid #ffffff15;padding:10px 0;color:#cdbed4;font-size:14px}.guide-data strong{display:inline-block;min-width:100px;font-size:32px;color:#fff;font-weight:500;letter-spacing:.02em;font-variant-numeric:tabular-nums}.guide-data small{margin-top:16px;color:#aa9bb4}.guide-section-heading{border-top:1px solid #ffffff20;padding-top:30px;margin-bottom:24px}.guide-section-heading h2{margin:0 0 5px;font-size:22px}.guide-section-heading p{font-size:14px;color:#bcaec5;margin:0}.demo-guide .role-card{color:var(--ink);padding:25px;border:0;border-top:3px solid #b192bb;border-radius:12px}.demo-guide .role-card h3{font-size:21px}.demo-guide .role-card p{min-height:48px}.guide-flow{padding:12px 0 18px;border-top:1px solid var(--line);margin-top:5px;margin-bottom:8px;font-size:12px}.demo-guide .role-card .button{white-space:normal}.demo-guide .guide-entry{background:#ece6ef}.guide-entry .button+.button{margin-top:12px}.guide-footer{display:flex;justify-content:space-between;gap:16px;padding:36px 0 10px;color:#afa2b8;font-size:12px}.preview-strip{background:#292030;color:#eaddef;display:flex;gap:18px;justify-content:space-between;padding:10px 36px;font-size:12px;align-items:center}.preview-strip a{color:#fff;text-decoration:underline;white-space:nowrap}.sidebar .demo-return{border-top:1px solid var(--line);border-radius:0;margin-top:12px;font-size:12px}.metrics.compact-metrics strong{font-size:32px}@media(max-width:760px){.guide-header{padding:20px;align-items:flex-start}.guide-header>span{font-size:11px;text-align:right}.guide-header b{display:block;margin:5px 0 0}.guide-logo img{width:120px;height:32px}.guide-main{padding:30px 20px 20px}.guide-hero{grid-template-columns:1fr;gap:20px;padding-bottom:28px}.guide-hero h1{font-size:32px}.guide-data{padding:20px}.guide-data>div{display:inline-block;width:32%;border:0;vertical-align:top;font-size:11px}.guide-data strong{display:block;min-width:0;font-size:27px}.guide-footer{flex-direction:column;gap:8px}.preview-strip{padding:10px 18px;gap:12px;font-size:11px}.preview-strip span{max-width:75%}}

/* Wearer/store service explanation, not a live order progress indicator. */
.service-steps{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px}
.service-steps li{min-width:0;border-top:2px solid #e9deec;padding-top:14px}
.service-step-number{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#f2eaf5;color:#50065b;font-weight:700}
.service-steps h3{font-size:16px;line-height:1.6;margin:12px 0 8px}.service-steps p,.service-aftercare p{font-size:14px;line-height:1.8;margin:0;color:#60616d}
.service-aftercare{border-top:1px solid #e6e2e9;padding-top:16px}.service-aftercare summary{cursor:pointer;color:#50065b}.service-aftercare p{margin-top:12px}
@media(max-width:1200px){.service-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.service-steps{grid-template-columns:1fr;gap:16px}.service-guide .section-heading{align-items:flex-start;flex-direction:column;gap:8px}}

.required-label{font-size:12px;color:#8b2335;background:#fff0f1;padding:2px 7px;border-radius:4px;margin-left:6px}.person-subtotal{display:flex;justify-content:space-between;border-top:1px solid #e4d8e7;padding-top:12px;font-size:16px}

.pagination{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:18px 0}.page-size{justify-content:flex-end}.bar-chart{overflow-x:auto}.bar-col{min-width:65px}

/* Booking list shortcuts expand across the whole table instead of squeezing forms into a cell. */
.booking-detail-link{white-space:nowrap}
.booking-quick-row>td{padding-top:0}
.booking-quick>summary{display:list-item;cursor:pointer;color:var(--purple,#4c0757);font-weight:600;padding:10px 0}
.booking-quick .panel{margin:12px 0;box-shadow:none}
.booking-quick form{max-width:620px}
.booking-quick select,.booking-quick input,.booking-quick textarea{max-width:100%}
/* 2026-10-27 workbench status + issue lists */
.source-facts>div{padding:9px 0}.issue-list{margin:0 0 14px;padding-left:20px}.issue-list li{margin:4px 0}.issue-list small{display:block}.candidate .section-heading h2 small{font-weight:400;margin-left:8px;display:inline}.candidate .button-row{margin-top:12px}.ack-list{display:grid;gap:8px;margin:10px 0 18px}.ack-list label{flex-direction:row;align-items:flex-start;gap:10px;font-weight:400}

.bulk-bar{display:flex;flex-wrap:wrap;align-items:center;gap:16px;position:sticky;top:8px;z-index:5;box-shadow:0 6px 18px rgba(75,7,80,.08)}.bulk-bar small{flex-basis:100%}.bulk-pick{float:right;margin:0 0 0 12px}
/* 2026-10-27 simplified workbench */
.compact-status .section-heading p{margin:4px 0 0;font-size:14px;color:var(--muted)}.tabs{align-items:center}.more-tabs{position:relative}.more-tabs summary{list-style:none;cursor:pointer}.more-tabs summary::-webkit-details-marker{display:none}.more-tabs>div{position:absolute;top:calc(100% + 6px);left:0;background:white;border:1px solid var(--line);border-radius:10px;padding:10px;display:grid;gap:8px;z-index:6;min-width:200px;box-shadow:0 8px 20px rgba(0,0,0,.08)}.candidate h2 .sex{font-weight:400;font-size:14px;color:var(--muted);margin-left:8px}.fact-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:0 24px;margin-bottom:14px}.fact-grid>div{justify-content:flex-start;gap:10px;padding:8px 0}.fact-grid dt{min-width:64px}.fact-grid dd{text-align:left}.todo-split{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:4px 0 8px}.todo-split h3{font-size:14px;color:var(--muted);margin-bottom:6px}.todo-split .issue-list{margin:0;padding-left:18px}.more-detail{margin-top:10px;font-size:14px}.more-detail p{margin:6px 0;color:var(--muted)}@media(max-width:760px){.todo-split{grid-template-columns:1fr}}

.good-text{color:var(--green)}

/* In-table links to a store's or a person's full order history */
.plain-link{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor}
.plain-link:hover{color:var(--accent,#1d4ed8);border-bottom-style:solid}
.handlers{display:block;color:var(--muted,#6b7280);font-size:.8em;margin-top:2px}
.nav-count{display:inline-block;min-width:1.4em;padding:0 .4em;border-radius:1em;background:#d97706;color:#fff;font-size:.75em;font-style:normal;text-align:center}
.inline-actions{display:flex;gap:.4rem;flex-wrap:wrap}

.page-size-inline{margin-left:auto;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted,#6b7280)}.page-size-inline select{padding:4px 8px}
.metrics article.accent a,.metrics article.accent a:visited{color:#fff}
