*{box-sizing:border-box} :root{--ink:#263e35;--paper:#f5f2e9;--sage:#dce3d5;--orange:#b55732}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,select{font:inherit;color:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{border:1px solid #bdc8b7;border-radius:7px;padding:9px 15px;background:#faf9f2;cursor:pointer}button:hover{background:#e7eddf}button:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #b55732;outline-offset:3px}button:disabled{opacity:.45;cursor:default}a{color:inherit}header{max-width:1390px;margin:auto;padding:23px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d5d9ca;gap:15px}.brand{font-size:15px;font-weight:800;letter-spacing:2px;text-decoration:none;white-space:nowrap}.mark{font-size:29px;margin-right:8px;color:var(--orange)}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:750}.intro{display:flex;justify-content:space-between;align-items:center;padding:38px 0 30px}.intro h1{font:normal 48px/1.04 Georgia,serif;letter-spacing:-1.8px;margin:12px 0 16px}.intro em{font-weight:normal;color:#667b61}.lede{font-size:14px;color:#667468}.stamp{border:2px solid #b5573299;outline:1px solid #b5573270;outline-offset:6px;border-radius:50%;width:132px;height:132px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--orange);transform:rotate(12deg);margin-right:30px}.stamp span{font-size:13px;letter-spacing:2px;text-align:center;line-height:1.25;font-weight:700}.stamp b{font-size:25px}.stamp small{font-size:7px;letter-spacing:1px}main{max-width:1220px;margin:auto;padding:0 32px}.workspace{display:grid;grid-template-columns:240px minmax(0,1fr);border:1px solid #cbd2c2;border-radius:14px;overflow:hidden;box-shadow:0 15px 50px #1e402b0b}.manifest{padding:27px 23px;background:#e7ebde;border-right:1px solid #cbd2c2}.manifest h2{font:27px Georgia,serif;margin:10px 0 24px}.manifest label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.5px;margin:15px 0 5px}.manifest select{width:100%;border:1px solid #bdc8b7;padding:9px;background:#f8f7ef;border-radius:5px}.manifest #routeNote{font-size:12px;color:#697665}.delivery{display:flex;justify-content:space-between;width:100%;background:transparent;border:0;border-bottom:1px solid #cbd2c2;border-radius:0;padding:11px 3px;text-align:left;font-size:12px}.delivery.current{font-weight:800;color:#a14728}.receipt{border-top:1px dashed #aab79e;border-bottom:1px dashed #aab79e;margin:24px 0 15px;padding:15px 0;display:flex;flex-direction:column}.receipt span{font-size:9px;letter-spacing:1px}.receipt strong{font:35px Georgia,serif}.receipt small,.source{font-size:10px;color:#697665}.play{padding:24px 27px;background:#fbfaf5;min-width:0}.playhead{display:flex;justify-content:space-between;align-items:center}.playhead h2{font:27px Georgia,serif;margin:4px 0 15px}.playhead .eyebrow{margin:0}.progress{text-align:right;display:flex;flex-direction:column}.progress strong{font:25px Georgia,serif}.progress span{font-size:8px;letter-spacing:1px}.scene{border-radius:10px;background:#364b3b url('depot.webp') center/cover;min-height:330px;display:flex;align-items:center;justify-content:center;position:relative;padding:25px 16px;isolation:isolate}.scene:before{content:"";inset:0;position:absolute;background:#182e1b22;border-radius:10px;z-index:-1}.bay{padding:9px 13px 6px;background:#263e35ed;border:3px solid #93a18a;border-radius:8px;box-shadow:0 10px 30px #0006}.baytop,.baybottom{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1.3px;color:#d6deca;padding:0 2px 7px;gap:24px}.baybottom{padding:7px 0 0;font-size:6px;justify-content:center}#board{display:grid;gap:3px;--size:45px}.cell{width:var(--size);height:var(--size);border:1px solid #9caa8a66;border-radius:3px;padding:0;background:#778d6b99;position:relative;touch-action:manipulation}.cell:hover{background:#c0d2a7aa}.cell.blocked{background:repeating-linear-gradient(45deg,#1c3027,#1c3027 5px,#465747 5px,#465747 8px);color:#b0b9a6;font-size:15px}.cell.packed{background:#cb9a5a url('parcel.webp') center/cover;border-color:#fff7;box-shadow:inset 0 0 0 2px var(--color)}.cell.packed span{border-radius:3px;background:var(--color);color:white;font-size:10px;padding:0 4px;text-shadow:0 1px 2px #0008}.cell.preview{background:#d0e9b5;box-shadow:inset 0 0 0 2px #e6f2c2}.cell.invalid{box-shadow:inset 0 0 0 3px #ee8b72}.cell.hinted{outline:3px solid #ffdc71;outline-offset:-3px}.cell.cursor{outline:2px solid white;outline-offset:0;z-index:1}.controls{display:flex;align-items:center;gap:7px;margin-top:17px}.controls button{font-size:12px;padding:8px 12px}.controls span{margin-left:auto;font-size:10px;color:#6b7566;text-align:right}#message{min-height:20px;font-size:12px;color:#556f4e;margin:11px 0 17px}.trayhead{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #e0e4d8;padding-top:14px}.trayhead h3{font:20px Georgia,serif;margin:0}.trayhead span{font-size:8px;letter-spacing:1px;color:#6b7566}#tray{display:flex;gap:9px;flex-wrap:wrap;padding:12px 0;min-height:98px}.piece{position:relative;padding:8px;border:1px solid #d8ddce;border-radius:8px;display:flex;align-items:center;flex-direction:column;gap:5px;min-width:65px;background:#efeee4}.piece.active{outline:2px solid #b55732;background:#f4dfca}.piece.used{opacity:.42}.mini{display:grid;gap:1px;align-content:center;justify-content:center;min-height:50px;position:relative}.mini:before{content:"";position:absolute;left:-3px;top:-3px;width:7px;height:7px;border-left:2px solid #b55732;border-top:2px solid #b55732}.mini i{width:15px;height:15px;border-radius:2px;background:#cba06b url('parcel.webp') center/cover;box-shadow:inset 0 0 0 1px var(--color)}.piece small{font-size:9px}.keyboard{font-size:10px;line-height:1.8;color:#7a8172}.primary{background:#2e513f;color:#fff;border:0}.primary:hover{background:#43674c}#win{position:absolute;inset:0;border-radius:10px;background:#f5f2e9f5;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;text-align:center;backdrop-filter:blur(5px)}#win[hidden]{display:none}#win h2{font:45px Georgia,serif;margin:10px}#win p{font-size:13px}#win button{margin-top:10px}dialog{border:1px solid #9cae92;border-radius:14px;max-width:530px;padding:35px;background:#f7f4eb;color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#112c2377;backdrop-filter:blur(4px)}dialog h2{font:35px Georgia,serif}dialog p,dialog li{font-size:14px}dialog li{margin:12px 0}#closeHelp{float:right;font-size:24px;padding:0 10px}footer{font-size:10px;text-align:center;padding:30px;color:#7a8172}footer a{margin-left:10px}body.credits main{max-width:750px;padding-top:50px}.credits h1{font:45px Georgia,serif}@media(min-width:1400px){.intro{padding:42px 0}}@media(max-width:850px){header>.eyebrow{display:none}.workspace{grid-template-columns:180px minmax(0,1fr)}.manifest{padding:20px 15px}.play{padding:20px 16px}main{padding:0 20px}.controls{flex-wrap:wrap}.controls span{width:100%;text-align:left;margin:2px 0}.intro h1{font-size:43px}}@media(max-width:620px){header{padding:14px 17px}.brand{font-size:11px;letter-spacing:1px}.mark{font-size:23px}header button{padding:6px 10px;font-size:11px}main{padding:0 12px}.intro{padding:24px 6px 20px}.intro h1{font-size:37px}.intro .eyebrow{font-size:8px;letter-spacing:1.2px}.lede{font-size:12px}.stamp{width:80px;height:80px;margin-right:12px}.stamp span{font-size:9px}.stamp b{font-size:15px}.stamp small{font-size:5px}.workspace{display:flex;flex-direction:column}.manifest{display:grid;grid-template-columns:1fr 1fr;gap:5px 12px;border-right:0;border-bottom:1px solid #cbd2c2;padding:14px}.manifest>.eyebrow,.manifest h2,.manifest label,.receipt,.source,#routeNote{display:none}.manifest select{font-size:12px;grid-row:1}#deliveries{grid-column:1/-1;display:flex;gap:5px}.delivery{justify-content:center;padding:7px 4px;font-size:10px;border:1px solid #bdc8b7;border-radius:5px}.play{padding:18px 13px}.scene{min-height:300px;padding:17px 8px}.playhead h2{font-size:25px}.trayhead span{font-size:6px}.keyboard{font-size:9px}#tray{gap:7px}.piece{min-width:58px;padding:7px}.mini i{width:13px;height:13px}dialog{width:calc(100% - 28px);padding:24px}dialog h2{font-size:29px}.bay{padding:7px 7px 5px}}
