.joining-orders{--join-ink:#183f39;--join-paper:#fffef9;--join-pip:#e9b84a;--join-dot:#abc4da;max-width:1080px;margin:auto;color:var(--join-ink);font-family:'Trebuchet MS',sans-serif}.joining-orders h1,.joining-orders h2,.joining-orders h3,.joining-orders h4{font-family:Georgia,serif;font-weight:normal;line-height:1.2}.joining-orders h1{font-size:clamp(2rem,5vw,3.2rem);margin:.25rem 0}.joining-orders p{line-height:1.45}.joining-orders button,.joining-orders input{font:inherit;min-height:44px;box-sizing:border-box}.joining-orders button{padding:.6rem .9rem;background:var(--join-paper);border:1px solid #618074;border-radius:.35rem;color:var(--join-ink);cursor:pointer}.joining-orders button.primary{background:var(--join-ink);color:#fff;border-color:var(--join-ink)}.joining-orders button:disabled{opacity:.5;cursor:default}.joining-orders :focus-visible,.joining-orders [tabindex='-1']:focus{outline:3px solid #805d08;outline-offset:3px}.join-head,.join-actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}.join-head{justify-content:space-between}.join-head a{padding:.6rem}.join-chooser,.join-work{border:2px solid #90b9ae;border-radius:1rem;padding:clamp(.7rem,2vw,1.2rem);margin:1rem 0;background:#f2f8f4}.join-case-list,.join-source-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.join-case,.join-source-card{min-width:0;border:1px solid #a6bcb0;border-radius:.7rem;padding:.7rem;background:var(--join-paper)}.join-case h3,.join-source-card h3{margin:.2rem 0}.join-request{padding:.6rem .8rem;border-left:5px solid var(--join-pip);background:#fff9e5}.join-question{font-size:1.35rem;font-weight:bold}.join-source-strip{font-weight:bold}.join-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.join-table section{min-width:0;padding:.55rem;border:1px solid #a6bcb0;border-radius:.5rem;background:var(--join-paper)}.join-table h3{font-size:1.05rem;margin:.1rem 0 .4rem}.join-packets,.join-loose{display:flex;flex-wrap:wrap;gap:.35rem;align-items:start;min-height:42px}.join-packet{display:grid;grid-template-columns:repeat(5,12px);gap:3px;padding:5px;border:2px solid #44615a;border-radius:.55rem;background:#e8eee8;width:max-content}.join-packet.join-mixed{border-style:dashed}.join-counter{display:inline-block;width:12px;height:14px;box-sizing:border-box;border:1.5px solid #24443b;border-radius:55% 35% 60% 40%;transform:rotate(12deg);flex:none}.join-counter.join-pip{background:var(--join-pip)}.join-counter.join-dot{background:var(--join-dot);border-radius:2px;transform:none}.join-frame{display:grid;grid-template-columns:repeat(5,20px);grid-template-rows:repeat(2,21px);gap:0;width:max-content;background:#fff;border:2px solid #577f9d}.join-frame .join-counter,.join-slot{margin:auto}.join-slot{display:block;width:20px;height:21px;box-sizing:border-box;border:1px dashed #77918a}.join-actions{margin:.7rem 0}.join-actions button{flex:1 1 12rem}.join-work form,.join-help,.join-keep,.join-compare{margin:1rem 0;padding:.75rem 0;border-top:2px solid #c4d7cc}.join-work form label{display:block;font-weight:bold;margin-bottom:.4rem}.join-work form input{display:block;max-width:100%;width:15rem;padding:.45rem;border:1px solid #618074;border-radius:.3rem;background:#fff}.join-work form button{margin-top:.5rem}.join-error{color:#8f3128}.join-feedback{padding:.6rem .8rem;background:#e4f2e8;border-left:5px solid #397958}.join-help h3{flex-basis:100%;margin:.1rem 0}.join-help p{flex-basis:100%;margin:.2rem 0}.join-keep h3,.join-compare h3{margin:.2rem 0}.join-keep section{margin:.5rem 0;padding:.6rem;border:1px solid #c4d7cc;border-radius:.4rem;background:#fff}.join-keep pre{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:640px){.join-case-list,.join-source-cards,.join-table{grid-template-columns:1fr}.join-actions button{flex-basis:100%}.join-head{align-items:start}.join-packets{gap:.25rem}}
.join-help .speech-controls{flex:1 1 100%;min-width:0;box-sizing:border-box}.joining-orders .speech-controls.speech-playing{position:static;bottom:auto;left:auto;transform:none;width:100%;max-width:100%;max-height:none;overflow:visible;z-index:auto;margin:.5rem 0;box-shadow:none}

.joining-orders details>summary{display:list-item;min-height:44px;box-sizing:border-box;padding:.6rem 0;cursor:pointer;font-weight:bold}.join-help button{margin:.25rem .35rem .25rem 0}.join-help .speech-controls{width:100%}.join-history summary{margin:.2rem 0}.join-compare p{margin:.3rem 0}
