/* Daily mail stays inside the game's existing, pause-aware dialog. */
#dialog.postcard-dialog{width:min(650px,calc(100% - 24px));max-height:min(920px,calc(100dvh - 28px));padding:25px 25px 18px;overflow:auto;overscroll-behavior:contain;border:2px solid #967962;border-radius:26px;background:#fffbef;color:#634d43;box-shadow:0 6px 0 #bba180,0 24px 90px #453b4466;scrollbar-width:thin;scrollbar-color:#cbb4a0 #fff9ea}
#dialog.postcard-dialog::backdrop{background:#3d354a78;backdrop-filter:blur(6px)}
#dialog.postcard-dialog>form{position:sticky;top:0;z-index:6;height:0;margin:0}
#dialog.postcard-dialog .dialog-close{position:absolute;right:-12px;top:-12px;float:none;margin:0;min-width:44px;min-height:44px;border:1.5px solid #b8a38e;border-radius:50%;background:#fff9ed;color:#7c6658;box-shadow:0 2px 0 #d4c1a6}
.postcard-panel,.postcard-panel *{box-sizing:border-box}
.postcard-panel{--postcard-cocoa:#634d43;--postcard-mint:#d3ebd5;--postcard-violet:#ddd1ef;min-width:0;color:var(--postcard-cocoa);font-family:inherit;text-align:center}
.postcard-panel [hidden]{display:none!important}
.postcard-panel .postcard-header{margin:0 auto 20px;max-width:470px;padding:3px 27px 0}
.postcard-panel .postcard-kicker{display:inline-block;color:#92797e;font-size:10px;font-weight:800;letter-spacing:.15em;line-height:1.5}
.postcard-panel h2.postcard-title{margin:11px 0 0;color:#624d42;font-size:clamp(23px,4.7vw,31px);line-height:1.15;letter-spacing:-.7px;font-weight:850;text-wrap:balance;outline:none}
.postcard-panel p.postcard-subtitle{margin:11px 0 0;color:#927c6b;font-size:13px;line-height:1.55;text-wrap:balance}
.postcard-panel .postcard-delivery{display:grid;place-items:center;min-height:212px;padding:26px 10px 20px;background:radial-gradient(ellipse,#ece6f3 0,#f8f0e5 44%,transparent 70%);margin:5px auto 0}
.postcard-panel .postcard-envelope{position:relative;width:245px;height:155px;transform:rotate(-5deg);isolation:isolate;filter:drop-shadow(0 11px 0 #a7948030)}
.postcard-envelope-back{position:absolute;inset:0;border:2px solid #a58b70;border-radius:11px;background:#e8d2ab}
.postcard-envelope-letter{position:absolute;inset:-11px 17px 12px;display:flex;align-items:flex-start;justify-content:center;padding-top:26px;border:2px solid #c6b29a;border-radius:8px;background:repeating-linear-gradient(0deg,#fffdf4 0 21px,#ece5db 22px 23px);color:#ad9388;font-size:10px;font-weight:800;letter-spacing:.12em}
.postcard-envelope-pocket{position:absolute;inset:0;border:2px solid #a58b70;border-radius:11px;background:linear-gradient(146deg,transparent 49.5%,#ddc29b 50%,#ddc29b 50.8%,transparent 51%) left top/50% 100% no-repeat,linear-gradient(214deg,transparent 49.5%,#ddc29b 50%,#ddc29b 50.8%,transparent 51%) right top/50% 100% no-repeat,#f5e4c5;clip-path:polygon(0 0,50% 54%,100% 0,100% 100%,0 100%)}
.postcard-envelope-flap{position:absolute;inset:0;border-radius:8px;background:#c4dcc8;clip-path:polygon(0 0,100% 0,50% 57%);z-index:1}
.postcard-envelope-seal{position:absolute;top:59px;left:calc(50% - 21px);width:43px;height:43px;display:grid;place-items:center;border:2px solid #957881;border-radius:48% 48% 44% 44%;background:#e5d5ee;color:#745a6d;font-size:27px;line-height:1;font-weight:850;box-shadow:0 3px 0 #b8a1b2;z-index:2;transform:rotate(5deg)}
.postcard-envelope-seal::before,.postcard-envelope-seal::after{content:'';position:absolute;top:-5px;width:12px;height:12px;background:#e5d5ee;border:2px solid #957881;border-right:0;border-bottom:0;transform:rotate(15deg);border-radius:3px;z-index:-1}
.postcard-envelope-seal::before{left:1px}.postcard-envelope-seal::after{right:1px;transform:rotate(75deg)}
.postcard-panel p.postcard-envelope-note{margin:7px 0 20px;color:#977e71;font-size:12px;font-weight:600;line-height:1.5}
.postcard-panel .postcard-actions{display:flex;flex-direction:column;align-items:center;gap:9px;margin:20px auto 0;width:100%;max-width:350px}
.postcard-panel button.postcard-button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:11px 20px;border:1.5px solid transparent;border-radius:13px;background:transparent;color:#766251;font-family:inherit;font-weight:750;font-size:14px;line-height:1.35;letter-spacing:0;text-transform:none;white-space:normal;overflow-wrap:anywhere;box-shadow:none;touch-action:manipulation;cursor:pointer;transition:transform .15s,background .15s;appearance:none}
.postcard-panel .postcard-actions>.postcard-button{width:100%}
.postcard-panel button.postcard-button-primary{border-color:#8fa486;background:#d4e9c7;color:#456149;box-shadow:0 3px 0 #a4b998;font-weight:800}
.postcard-panel button.postcard-button-primary:hover{background:#e0efd6;transform:translateY(-1px)}
.postcard-panel button.postcard-button-primary:active{transform:translateY(2px);box-shadow:0 1px 0 #a4b998}
.postcard-panel button.postcard-button-quiet{color:#8d727c;background:transparent}
.postcard-panel button.postcard-button-quiet:hover{background:#f2eaf3}
.postcard-panel button.postcard-button-soft{background:#f0e8f8;border-color:#c5b2d2;color:#806b93;min-height:44px;font-size:12px;padding:9px 14px;margin:0 auto}
.postcard-panel button:focus-visible,.postcard-tile-owned:focus-visible{outline:3px solid #9978be;outline-offset:4px}
.postcard-panel .postcard-reveal{position:relative;max-width:365px;margin:0 auto;perspective:900px}
.postcard-panel .postcard-frame{position:relative;background:#fffdf5;border:1.5px solid #c2a887;border-radius:12px;padding:9px;box-shadow:0 4px 0 #dec9a9,0 12px 26px #89735a16;overflow:hidden}
.postcard-panel figure.postcard-art{position:relative;display:grid;place-items:center;width:100%;margin:0;border-radius:6px;background:#f7efdc;overflow:hidden;min-height:120px}
.postcard-panel .postcard-art .postcard-image{display:block;width:100%;height:auto;max-height:49dvh;object-fit:contain;object-position:center;aspect-ratio:1122/1402}
.postcard-panel .postcard-card-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:42px;padding:11px 5px 3px;text-align:left}
.postcard-panel .postcard-card-caption{font-size:15px;line-height:1.3;font-weight:750;color:#715b50;overflow-wrap:anywhere}
.postcard-panel .postcard-card-number{flex:0 0 auto;color:#b29b88;font-size:9px;font-weight:800;letter-spacing:.06em}
.postcard-panel .postcard-reveal-envelope{position:absolute;top:calc(50% - 78px);left:calc(50% - 123px);z-index:4;pointer-events:none}
.postcard-panel .postcard-is-revealing .postcard-frame{animation:postcard-arrive .6s .15s cubic-bezier(.18,.8,.25,1) both}
.postcard-panel .postcard-is-revealing .postcard-reveal-envelope{animation:postcard-envelope-open .62s ease-in both}
.postcard-panel .postcard-is-revealing .postcard-envelope-flap{transform-origin:top;animation:postcard-flap-open .3s ease-out both}
.postcard-panel p.postcard-saved{margin:15px 0 0;color:#739476;font-size:12px;line-height:1.5;font-weight:650}
.postcard-panel .postcard-image-error{padding:25px 16px;max-width:290px;color:#977d6f;min-height:150px;display:grid;place-content:center;gap:10px}
.postcard-panel .postcard-image-error p{margin:0;color:#977d6f;font-size:12px;line-height:1.5}
.postcard-panel p.postcard-local-note{margin:18px auto 0;max-width:400px;color:#a28d7a;font-size:10px;line-height:1.6;text-wrap:balance}
.postcard-panel p.postcard-storage-warning{margin:14px auto 0;max-width:400px;padding:10px 12px;background:#fff0d9;border:1px solid #e6c9a4;border-radius:10px;color:#926641;font-size:12px;line-height:1.5}
.postcard-panel .postcard-collection-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 18px;padding:11px 12px;background:#f5efe0;border:1px solid #e5d7bf;border-radius:12px}
.postcard-panel .postcard-collection-toolbar .postcard-button{margin:0}
.postcard-panel .postcard-collection-count{font-size:12px;font-weight:800;color:#806a58}
.postcard-panel .postcard-collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 10px;text-align:left}
.postcard-panel .postcard-collection-item{min-width:0}
.postcard-panel .postcard-tile{display:flex;flex-direction:column;align-items:stretch;text-align:left;min-width:0;width:100%;height:100%;margin:0;padding:6px;border:1.5px solid #cdb89c;border-radius:10px;background:#fffdf6;color:#725e4f;box-shadow:0 3px 0 #e3d3b9;overflow:hidden;font:inherit;touch-action:manipulation}
.postcard-panel button.postcard-tile-owned{cursor:pointer;transition:transform .16s}
.postcard-panel button.postcard-tile-owned:hover{transform:translateY(-3px);background:#fffdf6}
.postcard-panel .postcard-tile-locked{border-style:dashed;border-color:#d3c6b1;background:#f7f2e6;box-shadow:none;color:#ad9a84}
.postcard-panel figure.postcard-thumbnail{position:relative;display:grid;place-items:center;margin:0;border-radius:5px;background:#f5eddd;aspect-ratio:1122/1402;overflow:hidden}
.postcard-panel .postcard-thumbnail .postcard-image{display:block;width:100%;height:100%;object-fit:contain}
.postcard-panel .postcard-thumbnail .postcard-image-error{min-height:0;padding:9px;font-size:10px}
.postcard-panel .postcard-thumbnail .postcard-image-error p{font-size:10px}
.postcard-panel .postcard-tile-number{display:block;margin:9px 3px 4px;font-size:8px;font-weight:750;letter-spacing:.06em;color:#a99782}
.postcard-panel .postcard-tile-title{display:block;margin:0 3px 6px;font-size:11px;font-weight:750;line-height:1.35;overflow-wrap:anywhere}
.postcard-panel .postcard-locked-art{position:relative;display:grid;place-items:center;aspect-ratio:1122/1402;min-width:0;border-radius:5px;background:repeating-linear-gradient(-45deg,#f2ebdc 0 7px,#f5eee3 7px 14px)}
.postcard-panel .postcard-mini-envelope{position:relative;width:48px;height:33px;background:#e9dfcb;border:1.5px solid #c6b79e;border-radius:5px;transform:rotate(-7deg);box-shadow:0 3px 0 #ded2bd}
.postcard-panel .postcard-mini-envelope::before{content:'';position:absolute;left:6px;right:6px;top:-7px;height:26px;transform:rotate(0deg);clip-path:polygon(0 25%,100% 25%,50% 100%);background:#c6b79e}
.postcard-panel .postcard-mini-envelope::after{content:'';position:absolute;left:7px;right:7px;top:-7px;height:24px;clip-path:polygon(0 25%,100% 25%,50% 100%);background:#eee5d3}
.postcard-panel .postcard-locked-spark{position:absolute;right:17%;top:22%;color:#caba9d;font-size:12px}
.launch-copy button.postcard-entry-button,.site-nav button.postcard-entry-button{position:relative;display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 17px;border:1px solid transparent;border-radius:10px;font:650 13px/1.4 system-ui,sans-serif;box-shadow:none;white-space:normal;touch-action:manipulation}
.launch-copy button.postcard-entry-button{display:flex;margin:8px auto 0;background:#153b2c88;border-color:#e6efd455;color:#f7f6ed}
.site-nav button.postcard-entry-button{margin:0;background:transparent;color:#806c86}
.launch-copy button.postcard-entry-button:hover{background:#244b3bbd}.site-nav button.postcard-entry-button:hover{background:#eee6f5}
.postcard-entry-button.postcard-has-mail::after{content:'';display:block;flex:0 0 auto;width:7px;height:7px;margin-left:8px;border-radius:50%;background:#efb1b7;box-shadow:0 0 0 3px #efb1b72b}
.postcard-entry-button:focus-visible{outline:3px solid #b99bd4;outline-offset:3px}
@keyframes postcard-envelope-open{0%{opacity:1;transform:rotate(-5deg) scale(1)}45%{opacity:1;transform:rotate(3deg) scale(1.06)}100%{opacity:0;transform:translateY(55px) rotate(8deg) scale(.8);visibility:hidden}}
@keyframes postcard-flap-open{to{transform:rotateX(160deg)}}
@keyframes postcard-arrive{from{opacity:0;transform:translateY(35px) rotate(3deg) scale(.92)}to{opacity:1;transform:none}}
@media(max-width:480px){#dialog.postcard-dialog{padding:22px 15px 16px;border-radius:21px;max-height:calc(100dvh - 24px)}#dialog.postcard-dialog .dialog-close{right:-7px;top:-11px}.postcard-panel .postcard-header{padding:2px 23px 0;margin-bottom:17px}.postcard-panel h2.postcard-title{font-size:24px}.postcard-panel .postcard-collection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 11px}.postcard-panel .postcard-collection-toolbar{padding:9px;gap:6px}.postcard-panel .postcard-collection-count{font-size:11px}.postcard-panel .postcard-collection-toolbar .postcard-button{font-size:11px;padding:9px}.postcard-panel .postcard-card-caption{font-size:13px}.postcard-panel .postcard-card-footer{gap:7px}.postcard-panel .postcard-tile-title{font-size:12px}.postcard-panel .postcard-delivery{min-height:195px}.postcard-panel .postcard-envelope{width:224px;height:146px}.postcard-panel .postcard-reveal-envelope{left:calc(50% - 112px)}.site-nav button.postcard-entry-button{flex:1 1 130px;padding:6px 8px}}
@media(prefers-reduced-motion:reduce){.postcard-panel *,.postcard-panel *::before,.postcard-panel *::after{animation:none!important;transition:none!important}.postcard-panel .postcard-reveal-envelope{display:none}.postcard-panel button.postcard-tile-owned:hover,.postcard-panel button.postcard-button-primary:hover{transform:none}}

.postcard-panel .postcard-storage-help{margin:18px auto 0;max-width:400px;color:#a28d7a;font-size:11px;line-height:1.5}.postcard-panel .postcard-storage-help summary{min-height:44px;display:list-item;list-style-position:inside;padding:14px 5px;cursor:pointer}.postcard-panel .postcard-storage-help p{margin:0;padding:8px 12px;background:#f5efdf;border-radius:9px;color:#967d68;font-size:11px;line-height:1.6}.postcard-panel .postcard-storage-help summary:focus-visible{outline:3px solid #9978be;outline-offset:2px;border-radius:7px}
