.po-shell{max-width:1460px;margin:0 auto}.po-page-heading{margin-bottom:16px}.po-event-picker{padding:14px 18px}.po-event-picker form,.po-event-picker label{margin:0}.po-list{display:grid;gap:12px}.po-person-card{border:1px solid var(--eom-border);border-radius:16px;padding:16px;background:var(--eom-surface-1)}.po-person-main,.po-detail-heading,.po-doc-meta{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}.po-person-main p,.po-person-main small,.po-detail-heading p{margin:.25rem 0;color:var(--eom-text-muted)}.po-badges,.po-preview-tabs,.po-doc-meta{display:flex;gap:8px;flex-wrap:wrap}.po-money{margin:12px 0;padding:10px 12px;background:var(--eom-info-bg);border-radius:10px;font-weight:800}.po-two-column{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;align-items:start}.po-channel-list{padding-left:1.2rem}.po-channel-list li{margin:.55rem 0}.po-history-list{display:grid;gap:10px;margin-top:16px}.po-preview-panel{border-left:5px solid var(--eom-accent-blue)}.po-nav-entry{display:flex!important;flex-direction:column;gap:2px}.po-nav-entry small{font-size:.68rem;opacity:.7}.po-booking-shortcut{margin-top:16px;border:2px solid var(--eom-info-border);background:var(--eom-info-bg)}.po-public-shell{max-width:920px;margin:0 auto;padding:20px}.po-public-card{background:var(--eom-surface-1);border:1px solid var(--eom-border);border-radius:22px;padding:clamp(22px,5vw,44px);box-shadow:0 14px 40px var(--eom-shadow-medium-color)}.po-preview-banner{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px;padding:13px 16px;background:var(--eom-accent-cyan);color:var(--eom-text-inverse);border-radius:14px}.po-preview-banner span{flex:1}.po-preview-banner a{color:var(--eom-text-inverse);font-weight:800}.po-preview-tabs{margin:0 0 14px}.po-preview-tabs a{padding:9px 13px;border-radius:10px;background:var(--eom-surface-3);text-decoration:none;color:var(--eom-text-muted);font-weight:800}.po-preview-tabs a.active{background:var(--eom-primary);color:var(--eom-text-inverse)}.po-preview-mode input:disabled,.po-preview-mode textarea:disabled,.po-preview-mode button:disabled{opacity:.75}.po-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.po-summary-grid>div{padding:13px;border:1px solid var(--eom-border);border-radius:12px}.po-summary-grid span{display:block;color:var(--eom-text-muted);font-size:.78rem}.po-condition-box{background:var(--eom-surface-2);border:1px solid var(--eom-border);border-radius:14px;padding:18px;margin:18px 0}.po-song-list{display:grid;gap:12px}.po-song-card{padding:16px;border:1px solid var(--eom-border);border-radius:14px}.po-review-box{margin-top:20px;padding:18px;border:2px solid var(--eom-info-border);border-radius:14px}.po-complete{text-align:center}.po-complete-mark{display:grid;place-items:center;width:76px;height:76px;margin:0 auto 18px;border-radius:50%;background:var(--eom-success-bg);color:var(--eom-accent-green);font-size:2.4rem;font-weight:900}.po-setlist-summary{display:grid;gap:8px;margin-bottom:18px}.po-setlist-summary>div{display:flex;justify-content:space-between;gap:12px;padding:11px;border-bottom:1px solid var(--eom-info-border)}.po-setlist-summary span{color:var(--eom-text-muted)}.po-doc-meta{color:var(--eom-text-muted);font-size:.82rem;border-bottom:1px solid var(--eom-border);padding-bottom:12px;margin-bottom:12px}@media(max-width:900px){.po-two-column{grid-template-columns:1fr}.po-summary-grid{grid-template-columns:1fr}.po-public-shell{padding:10px}.po-public-card{border-radius:16px}.po-setlist-summary>div{flex-direction:column}.po-preview-banner{position:static}}

/* v18.16.1: public performer pages are deliberately independent from the operator shell. */
.po-public-body{margin:0;min-height:100vh;background:var(--eom-info-bg);color:var(--eom-text);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.65}.po-public-body *{box-sizing:border-box}.po-public-main{min-height:calc(100vh - 58px);padding:clamp(12px,3vw,32px) 0}.po-public-body h1,.po-public-body h2,.po-public-body h3{line-height:1.35;color:var(--eom-info-text)}.po-public-body h1{margin:.2rem 0 1rem;font-size:clamp(1.65rem,4vw,2.35rem)}.po-public-body h2{margin:1.5rem 0 .7rem;font-size:1.2rem}.po-public-body h3{margin:.8rem 0;font-size:1rem}.po-public-body p{margin:.55rem 0 1rem}.po-public-body .eyebrow{margin:0;color:var(--eom-accent-cyan);font-size:.74rem;font-weight:900;letter-spacing:.14em}.po-public-body label{display:block;margin:14px 0 6px;color:var(--eom-info-text);font-weight:800}.po-public-body input,.po-public-body textarea,.po-public-body select{display:block;width:100%;margin-top:6px;padding:12px 13px;border:1px solid var(--eom-border-strong);border-radius:11px;background:var(--eom-surface-1);color:var(--eom-text);font:inherit}.po-public-body input:focus,.po-public-body textarea:focus,.po-public-body select:focus{outline:3px solid var(--eom-primary-tint-18);border-color:var(--eom-accent-blue)}.po-public-body button,.po-public-body .btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:0;border-radius:11px;background:var(--eom-primary);color:var(--eom-text-inverse);text-decoration:none;font:inherit;font-weight:900;cursor:pointer}.po-public-body button:disabled{cursor:not-allowed}.po-public-body .actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}.po-public-body .small{color:var(--eom-text-muted);font-size:.82rem}.po-public-body .badge{display:inline-flex;padding:4px 9px;border-radius:999px;background:var(--eom-info-bg);color:var(--eom-text-muted);font-size:.75rem;font-weight:800}.po-public-body .flash{margin:18px 0;padding:14px 16px;border-radius:12px}.po-public-body .flash.success{background:var(--eom-success-bg);color:var(--eom-success-text)}.po-public-body .flash.error{background:var(--eom-danger-bg);color:var(--eom-danger-text)}.po-public-body .check-row{display:flex;align-items:flex-start;gap:10px;font-weight:700}.po-public-body .check-row input{flex:0 0 auto;width:20px;height:20px;margin:3px 0 0}.po-public-footer{display:flex;align-items:center;justify-content:center;min-height:58px;padding:12px;color:var(--eom-accent-blue);font-size:.76rem}.po-public-body .po-preview-banner{top:10px}.po-public-body .po-public-card{overflow:hidden}@media(max-width:600px){.po-public-main{padding:8px 0}.po-public-body .po-public-shell{padding:8px}.po-public-body .po-public-card{padding:20px 17px}.po-public-body button,.po-public-body .btn{width:100%}}

/* v18.16.3: structured conditions, delivery preview and auto-draft workspace */
.po-rule-editor{background:var(--eom-surface-2);border:1px solid var(--eom-border);border-radius:16px;margin:16px 0;padding:16px}
.po-rule-editor .table-wrap{margin-top:12px}
.po-rule-editor table input[type="number"]{min-width:90px}
.po-delivery-preview{max-width:1180px}
.po-mail-fields{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.po-mail-fields p{background:var(--eom-surface-2);border:1px solid var(--eom-border);border-radius:12px;margin:0;padding:12px}
.po-mail-preview{background:var(--eom-surface-1);border:1px solid var(--eom-border);border-radius:14px;line-height:1.65;max-height:520px;overflow:auto;padding:18px;white-space:pre-wrap;word-break:break-word}
.po-pdf-frame{background:var(--eom-info-bg);border:1px solid var(--eom-border-strong);border-radius:14px;height:760px;width:100%}
.po-send-confirm{border:2px solid var(--eom-accent-blue)}
.po-send-confirm form button{font-size:1.02rem;min-height:52px;width:100%}
.po-draft-list{display:grid;gap:12px}
.po-draft-list details>summary{cursor:pointer;list-style:none;padding:4px 0}
.po-draft-list details>summary::-webkit-details-marker{display:none}
.po-draft-list details>form{border-top:1px solid var(--eom-border);margin-top:12px;padding-top:12px}
.po-draft-list textarea[readonly]{background:var(--eom-surface-2);min-height:260px}
@media(max-width:760px){.po-mail-fields{grid-template-columns:1fr}.po-pdf-frame{height:560px}.po-rule-editor{padding:12px}}
.po-form-intro{display:grid;gap:4px;margin:22px 0 16px;padding:14px 16px;border-left:4px solid var(--eom-accent-blue);border-radius:10px;background:var(--eom-info-bg)}.po-form-intro strong{color:var(--eom-info-text)}.po-form-intro span{font-size:.92rem}.po-form-intro em{color:var(--eom-text-muted);font-size:.78rem;font-style:normal}.po-preview-section{margin:20px 0;padding:20px;border:1px solid var(--eom-border);border-radius:16px;background:var(--eom-surface-1)}.po-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.po-section-heading h2{margin:.1rem 0 .25rem}.po-section-heading p:not(.eyebrow){margin:0;color:var(--eom-text-muted);font-size:.88rem}.po-required-badge{padding:5px 9px;border-radius:999px;background:var(--eom-danger-bg);color:var(--eom-danger-text);font-size:.75rem;font-weight:900;white-space:nowrap}.po-label-note{font-size:.75rem;color:var(--eom-text-muted);font-weight:600}.po-preview-section input:disabled,.po-preview-section textarea:disabled{background:var(--eom-surface-2);border-style:dashed;opacity:1;color:var(--eom-text)}.po-collapsible{padding:0;overflow:hidden}.po-collapsible>summary{display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;list-style:none;padding:17px 20px;background:var(--eom-surface-2);font-size:1.02rem}.po-collapsible>summary::-webkit-details-marker{display:none}.po-collapsible>summary small{color:var(--eom-text-muted);font-size:.78rem;font-weight:600}.po-collapsible>summary strong{margin-right:8px;color:var(--eom-accent-blue)}.po-condition-content{padding:0 20px 8px}.po-setlist-preview>h2{margin-top:0}.po-setlist-preview .pb-song-section{margin-left:-4px;margin-right:-4px}@media(max-width:600px){.po-preview-section{padding:16px}.po-collapsible>summary{align-items:flex-start;flex-direction:column;padding:15px 16px}.po-condition-content{padding:0 16px 6px}.po-section-heading{flex-direction:column}}
.po-upload-state{margin:.3rem 0;color:var(--eom-text-muted);font-size:.82rem}.po-upload-state-ok{color:var(--eom-success-text);font-weight:800}.po-upload-state a{color:inherit}
