.after-three{container-type:inline-size;padding-bottom:12px;--paper-note:#ffdd8e;--hour:87.5deg;--minute:330deg}
.shift-tag,.print-label,.step-label,.call-status,#shop-time,.game-tools,.repair-line,.pocket-label,.call-button,.try-note{font-family:var(--mono)}
.shift-tag,.print-label,.pocket-label{font-weight:700;text-transform:uppercase;letter-spacing:.07em}
.shift-tag{font-size:clamp(9px,1.9cqw,11px);color:#d2daca}
#bench,.counter-view,.note-pad{border:2px solid #182e27;border-radius:4px;overflow:hidden}
.shop-scene{position:relative;background:#687f6c}
.shop-art{display:block;width:100%;height:auto;image-rendering:pixelated}
.painted-sign{position:absolute;left:4%;top:12%;padding:1% 3% 2.4%;text-align:center;color:#2e5141;background:#ede5c9ed;border:3px double #71826a;box-shadow:1px 2px 0 #3e584d55;transform:rotate(-2deg)}
.painted-sign span{font:700 clamp(8px,1.8cqw,11px)/1 var(--mono);letter-spacing:.13em;text-transform:uppercase}
.painted-sign strong{display:block;font:700 clamp(26px,7.2cqw,52px)/.78 var(--serif);letter-spacing:-.075em;margin-top:.17em}
.painted-sign em{font-weight:400}
.dial{position:relative;display:block;border-radius:50%;border:3px solid #556558;background:radial-gradient(circle,#eee4c7 0 60%,transparent 61%),repeating-conic-gradient(from -1deg,#596a57 0 2deg,#e9dfc2 2.5deg 29deg,#596a57 29.5deg 30deg);box-shadow:inset 0 0 0 2px #e4d5ae,1px 2px 0 #31493e7d}
.dial .hour,.dial .minute{position:absolute;left:50%;bottom:50%;width:4%;background:#374a3c;transform-origin:50% 100%;border-radius:2px}
.dial .hour{height:24%;transform:translateX(-50%) rotate(var(--hour))}
.dial .minute{height:33%;width:3%;transform:translateX(-50%) rotate(var(--minute))}
.dial:after{content:"";position:absolute;width:7%;height:7%;border-radius:50%;background:#805d49;top:46.5%;left:46.5%}
.wall-clock{position:absolute;right:4%;top:13%;width:7.8%;aspect-ratio:1;border-width:2px}
.bike-bell{position:absolute;left:52%;top:32%;width:max(28px,6%);height:max(28px,15%);transform:translate(-50%,-50%);background:none;border:0;border-radius:50%}
.bike-bell:hover{box-shadow:0 0 0 1px #fff4c5aa}
.worktop{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:5%;padding:12px 5% 16px;color:#343c31;border-top:4px solid #775437;background:repeating-linear-gradient(177deg,#aa805a20 0 1px,transparent 1px 6px),repeating-linear-gradient(0deg,#a77a53 0 30px,#976d4b 31px,#bb8d62 33px,#a87a53 35px);box-shadow:inset 0 4px 6px #5f493657}
.phone-place{min-width:0;position:relative;display:flex;flex-direction:column;align-items:center;align-self:center}
.desk-phone{display:block;width:100%;max-width:160px;height:auto;image-rendering:pixelated}
.phone-paper{position:relative;width:94%;margin-top:-5%;min-height:28px}
.paper,.call-note{overflow-wrap:anywhere;white-space:pre-wrap;background:var(--paper-note);color:#3c402d;font:italic clamp(15px,3.2cqw,22px)/1.13 var(--serif);text-align:left}
.paper{position:relative;display:block;width:100%;border:0;border-radius:0 0 3px 1px;padding:10px 9px 8px;box-shadow:0 3px 2px #49351c66;transform:rotate(-4deg);touch-action:none;user-select:none;cursor:grab}
.paper:before{content:"";position:absolute;top:-5px;left:29%;width:39%;height:9px;transform:rotate(3deg);background:repeating-linear-gradient(90deg,#e1d8aeaa 0 2px,#e4dfc8bb 2px 3px);box-shadow:0 1px #9a8c6555}
.paper.held{transform:translateY(-5px) rotate(3deg);box-shadow:1px 6px 4px #49351c77;outline:2px solid #537759;cursor:grabbing}
.paper.dragging{z-index:6;cursor:grabbing}
.ticket{position:relative;background:#f1e3bf;padding:12px clamp(9px,2.4cqw,16px) 9px;border:1px solid #c9b38b;box-shadow:2px 2px #c6b28f,3px 4px #706d53;transform:rotate(1deg);min-width:0}
.ticket-clip{position:absolute;left:32%;top:-5px;width:36%;height:8px;background:linear-gradient(#526257,#c3c6ad 45%,#89947f);border-radius:2px;box-shadow:0 1px #626c59}
.print-label{display:block;font-size:clamp(9px,1.85cqw,11px);line-height:1.3;color:#56624c}
.bike-name,.call-bike{display:block;font:700 clamp(16px,3.7cqw,25px)/1.1 var(--serif);letter-spacing:-.04em;margin:5px 0}
.repair-line{display:block;font-size:clamp(9px,2cqw,12px);line-height:1.4;color:#52624c}
.ticket-pocket{margin-top:7px;border:1px dashed #acaa8a;text-align:center;padding:5px 2px}
.pocket-label{display:block;font-size:clamp(8px,1.7cqw,10px);color:#647056}
.ticket.target .ticket-pocket{border:2px dashed #4c7855;background:#e1e8b4}
.drop-target{position:absolute;inset:0;width:100%;height:100%;background:transparent}
.ticket.has-note .ticket-pocket{border:0;padding:0}
.ticket .paper:disabled{cursor:default;opacity:1;transform:rotate(-2deg);font-size:clamp(13px,2.9cqw,18px);padding:7px 6px 5px}
.game-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 5px 0}
.game-caption>div{min-width:0}.game-caption h2{font:650 1.05rem/1.3 var(--sans)}
.game-caption p{font-size:.85rem;line-height:1.45;color:#d9dfd1;margin-top:3px;max-width:53ch}
.game-tools{display:flex;gap:12px;justify-content:space-between;align-items:center;padding:0 5px}
.game-tools button{font:inherit;font-size:.73rem;color:#d9dfd1;background:none;padding:7px 1px;min-height:32px;text-underline-offset:3px}
.game-tools button:hover{text-decoration:underline}
#reset-game{margin-left:auto}
.counter-view{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:5%;min-height:clamp(240px,54cqw,330px);align-items:center;padding:clamp(13px,4cqw,30px);color:#3b493a;background:linear-gradient(#0000 65%,#855f4026),repeating-linear-gradient(2deg,#b48b63 0 17px,#a78059 18px,#b78f65 19px,#b48b63 21px)}
.clock-panel{display:flex;min-width:0;flex-direction:column;align-items:center;text-align:center;padding:12px 7px;background:#e3d7bb;box-shadow:1px 2px #776f57;border:1px solid #aca481}
.clock-step{display:block;margin:8px 0 4px;padding:0;background:transparent;color:#39553e;line-height:1}
.big-clock{width:clamp(52px,16cqw,94px);aspect-ratio:1;margin:auto;border-width:4px}
.step-label{display:block;font-size:clamp(10px,2cqw,12px);margin-top:8px}
.clock-step:disabled{opacity:.85;cursor:default}
#shop-time{font-weight:700;font-size:clamp(13px,3.2cqw,20px)}
#clock-range{width:95%;accent-color:#426746;cursor:pointer;height:28px;margin:1px 0 0}
.call-sheet{min-width:0;position:relative;padding:17px 10px 12px;background:#f4e8c9;border:1px solid #d1bd98;box-shadow:2px 3px #d0bf9c,4px 5px #856e50;transform:rotate(-1deg)}
.call-sheet h3,.note-pad h3{font:italic clamp(22px,4.6cqw,32px)/1.1 var(--serif);letter-spacing:-.05em}
.call-sheet h3{padding-bottom:5px;border-bottom:1px solid #adad8d}
.call-bike{font-size:clamp(15px,3cqw,21px);margin:9px 0 2px}
.call-status{display:block;text-transform:uppercase;font-weight:700;color:#57674d;font-size:clamp(9px,2cqw,12px)}
.wait-line{font-size:clamp(12px,2.7cqw,15px);margin-top:12px;color:#646855}
.call-note{margin:10px 0 5px;padding:7px 8px;box-shadow:1px 2px #b9ab84;font-size:clamp(14px,3cqw,20px)}
.call-button,.try-note{margin-top:10px;padding:8px 9px;background:#345b45;color:#fff8df;border-radius:3px;font-size:clamp(11px,2.4cqw,14px);font-weight:700}
.note-pad{display:block;background:#f4e8c9;color:#304b39;padding:clamp(16px,4cqw,28px)}
.note-pad h3{margin-top:8px}.note-pad h3 label{font:inherit;margin:0}
.note-pad textarea{background:#ffe2a0;border:1px solid #b4aa87;margin-top:12px;min-height:70px;font:italic 18px/1.3 var(--serif);color:#394232}
.note-pad>label{font-size:.84rem}.note-pad select{font:inherit;font-size:1rem;max-width:100%;padding:6px;background:#fcf5de;border:1px solid #a6ad90;color:#2b4632}
.try-note{display:block}
@container(max-width:350px){.worktop{padding:10px 3.5% 14px;gap:4%}.game-caption{flex-wrap:wrap;gap:7px}.game-caption .play{padding:8px 10px}.counter-view{gap:8px;padding:10px}.paper{padding-inline:6px}}
