:root{--forest:#123f32;--forest-dark:#0e2923;--gold:#c39a56;--cream:#faf4e8;--ink:#25382f;--muted:#687970;--border:#dcded6;--surface:#fffdf7;--radius:22px}
[hidden]{display:none!important}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}img{max-width:100%} :focus-visible{outline:3px solid #d49f43;outline-offset:3px}.sr-only{position:absolute;clip:rect(0,0,0,0);height:1px;width:1px;overflow:hidden;white-space:nowrap}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:800;letter-spacing:-.035em}.brand-mark{width:37px;height:37px;border:1px solid #b9d0bf;border-radius:13px;display:grid;place-items:center;font-size:22px;background:#eef3eb}.brand-small{font-size:12px;text-transform:uppercase;letter-spacing:.19em;opacity:.8;font-weight:700}.eyebrow{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.23em;color:#b28a4d}.serif{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.035em}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 18px;border-radius:13px;text-decoration:none;border:1px solid transparent;font-weight:750;min-height:48px;transition:background .2s,transform .2s,border-color .2s}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--forest);color:#fff}.btn-primary:hover{background:#23624b}.btn-ghost{border-color:#d8dfd6;background:#fff;color:var(--forest)}.btn-ghost:hover{border-color:#91a599;background:#f7faf6}.btn-soft{background:#eaf0e8;color:var(--forest)}.full{width:100%}
/* Kreator */
.creator-body{background:#f3f3ec;color:var(--ink);min-height:100vh;background-image:radial-gradient(#bfd0bf4d 1px,transparent 1px);background-size:30px 30px}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;max-width:1440px;padding:0 32px;margin:0 auto}.topbar-note{font-size:13px;color:#65766c}.creator-layout{max-width:1440px;padding:16px 32px 60px;margin:auto;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:30px;align-items:start}.creator-panel{background:var(--surface);border:1px solid #e5e7dd;border-radius:28px;padding:36px 38px;box-shadow:0 18px 55px #1a3f2720}.hero-badge{display:inline-flex;gap:8px;align-items:center;border:1px solid #e8dcc3;border-radius:20px;padding:6px 12px;background:#fdf7ec;font-size:11px;font-weight:800;color:#956d32;letter-spacing:.11em;text-transform:uppercase}.creator-title{font-size:clamp(34px,3.3vw,51px);line-height:1.07;margin:19px 0 12px}.creator-intro{font-size:14px;color:#738078;max-width:530px;margin:0 0 29px}.step{padding:25px 0;border-top:1px solid #e7e9e1}.step-head{display:flex;align-items:center;gap:13px;margin-bottom:19px}.step-no{flex:none;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#e8eee6;color:#2c694f;font-size:13px;font-weight:800}.step h2{font-size:17px;margin:0;letter-spacing:-.015em}.field-label{display:block;font-size:12px;font-weight:800;color:#41594b;margin-bottom:9px}.field-hint{font-size:12px;color:#7c867f;margin:7px 0 0}.field{display:block;width:100%;border:1px solid #dce2d8;background:#fff;border-radius:13px;padding:13px 14px;min-height:48px;color:#203a2c;outline:none;transition:border-color .2s,box-shadow .2s}.field:focus{border-color:#518369;box-shadow:0 0 0 4px #3c77511c}.field::placeholder{color:#9aa79f}.field-textarea{min-height:138px;resize:vertical;line-height:1.65}.fields-two{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{margin-bottom:19px}.theme-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.theme-option{display:block;cursor:pointer}.theme-option input{position:absolute;opacity:0}.theme-tile{padding:9px;border:1px solid #e1e4db;border-radius:14px;background:white;transition:.2s;display:flex;align-items:center;gap:12px}.theme-option input:checked+.theme-tile{border-color:#286a4d;background:#edf4eb;box-shadow:0 0 0 2px #bfdcc7}.theme-option input:focus-visible+.theme-tile{outline:3px solid #d49f43}.theme-swatch{height:48px;width:58px;border-radius:9px;flex:none;display:block;background:linear-gradient(130deg,#68232d,#981e32,#351b30)}.theme-swatch[data-palette=frost]{background:linear-gradient(130deg,#1c5879,#a2c8da,#234368)}.theme-swatch[data-palette=gold]{background:linear-gradient(130deg,#704b24,#dab172,#543d27)}.theme-swatch[data-palette=forest]{background:linear-gradient(130deg,#124533,#387d60,#102f29)}.theme-label{font-size:12px;font-weight:750;line-height:1.3}.file-picker{position:relative;border:1px dashed #abc3b2;padding:16px;border-radius:15px;background:#f6faf4}.file-picker input{width:100%;max-width:100%;font-size:12px}.file-picker input::file-selector-button{border:0;border-radius:8px;padding:9px 13px;background:#e1ede1;color:#21543a;font-weight:750;margin-right:9px;cursor:pointer}.checkline{display:flex;gap:11px;align-items:start;font-size:13px;color:#4f6558;cursor:pointer}.checkline input{appearance:none;width:19px;height:19px;border:1.5px solid #7c9b82;border-radius:6px;margin:1px 0 0;flex:none;background:white;cursor:pointer}.checkline input:checked{background:#195b42;border-color:#195b42;box-shadow:inset 0 0 0 4px #195b42;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3'%3E%3Cpath d='m5 12 4 4 10-10'/%3E%3C/svg%3E")}.stickers{display:flex;flex-wrap:wrap;gap:8px}.sticker-choice{cursor:pointer}.sticker-choice input{position:absolute;opacity:0}.sticker-choice span{display:block;padding:9px 13px;border:1px solid #dce2d8;border-radius:11px;background:white;font-size:12px;font-weight:700}.sticker-choice input:checked+span{border-color:#3f7958;background:#ecf5ed}.sticker-choice input:focus-visible+span{outline:3px solid #d49f43}.creator-submit{border-top:1px solid #e7e9e1;padding-top:25px}.privacy-note{margin:0 0 20px}.error-message{padding:13px 16px;border-radius:12px;border:1px solid #e2a69f;background:#fff0ec;color:#923d2e;font-size:13px;margin-bottom:20px}.field-meta{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:11px;color:#88978c;margin-top:7px}
/* Wspólny wygląd kartki i podglądu */
.preview-panel{position:sticky;top:20px;border-radius:28px;overflow:hidden;background:#123f32;box-shadow:0 22px 54px #15392b28}.preview-top{display:flex;align-items:center;justify-content:space-between;padding:18px 26px;color:#eee9d8;border-bottom:1px solid #ffffff23;background:#113f31}.preview-top strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase}.preview-top span{font-size:11px;color:#bdcfc1}.preview-stage{padding:34px 28px 24px;background:radial-gradient(circle at 50% 20%,#5a876f 0%,#153b30 65%,#102b27 100%)}.preview-bottom{display:flex;align-items:center;gap:8px;justify-content:center;padding:17px;color:#cad9cd;font-size:11px;background:#113f31}.sparkle{color:#c59f5a}.card-scene{--accent:#a32f3f;--deep:#3d1520;--light:#d99b8a;--highlight:#f5ddad;position:relative;isolation:isolate;padding:48px 23px;background:radial-gradient(ellipse at 51% 10%,#944b57 0%,var(--accent) 27%,var(--deep) 100%);border-radius:17px;min-height:480px;display:flex;align-items:center;justify-content:center;overflow:hidden}.card-scene.theme-frost{--accent:#315c7a;--deep:#162d4c;--light:#b1d7e5;--highlight:#e3f6ff;background:radial-gradient(ellipse at 50% 15%,#76a9bb,var(--accent) 34%,var(--deep))}.card-scene.theme-gold{--accent:#956c36;--deep:#503016;--light:#eac78e;--highlight:#ffecd1;background:radial-gradient(ellipse at 50% 15%,#caab71,var(--accent) 34%,var(--deep))}.card-scene.theme-forest{--accent:#25634b;--deep:#102e27;--light:#b1d5be;--highlight:#fff0bb;background:radial-gradient(ellipse at 50% 15%,#578d70,var(--accent) 34%,var(--deep))}.card-scene:before{content:"";position:absolute;inset:12px;border:1px solid #ffffff6b;border-radius:11px;pointer-events:none;z-index:2}.card-scene:after{content:"✦   ·   ✧   ·   ✦";position:absolute;left:0;right:0;bottom:23px;font-size:13px;letter-spacing:.7em;color:var(--highlight);text-align:center;opacity:.9;pointer-events:none}.card-glow{position:absolute;inset:0;background-image:radial-gradient(#fff8 1px,transparent 1px),radial-gradient(#fff5 1px,transparent 1px);background-size:63px 79px,81px 71px;background-position:9px 14px,31px 32px;opacity:.38;pointer-events:none}.card-inner{z-index:1;position:relative;width:100%;padding:32px 29px 28px;background:#fffaf0f2;border:1px solid #e8cda5;border-radius:8px;box-shadow:0 15px 40px #160e1245;color:#244235;text-align:center;min-width:0}.card-inner:before{content:"";position:absolute;inset:8px;border:1px solid #a47d414f;pointer-events:none}.card-star{font-size:24px;color:#b49360;line-height:1}.card-kicker{font-size:10px;letter-spacing:.3em;text-transform:uppercase;font-weight:800;color:#8f7757;margin:15px 0 8px}.card-heading{font-size:clamp(27px,3vw,39px);line-height:1.08;color:#214f3e;margin:0 0 19px}.card-rule{width:70px;height:1px;background:#b89d72;margin:19px auto}.card-message{font-family:Georgia,"Times New Roman",serif;font-size:clamp(15px,1.5vw,19px);line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;color:#32473b;margin:0}.card-signoff{font-size:10px;text-transform:uppercase;letter-spacing:.19em;color:#8c8977;margin:24px 0 1px}.card-author{font-family:Georgia,"Times New Roman",serif;font-style:italic;font-size:clamp(21px,2vw,28px);color:#1f5b44;overflow-wrap:anywhere;margin:0}.card-photo{height:110px;width:110px;object-fit:cover;border-radius:50%;border:4px solid #fff;box-shadow:0 5px 20px #5342254f;margin:0 auto 15px;display:block}.card-sticker{position:absolute;right:17px;top:16px;font-size:26px;filter:drop-shadow(0 2px 2px #291f2433)}.card-inner .card-sticker{z-index:2}.card-inner .card-star{margin-top:3px}
/* Widok gotowej kartki */
.viewer-body{background:#0d2f26;color:#f7f2e8;min-height:100vh;background-image:radial-gradient(circle at 15% 10%,#34695355,transparent 36%),radial-gradient(circle at 85% 70%,#70582a4a,transparent 42%)}.viewer-top{max-width:1100px;margin:0 auto;padding:21px 24px;display:flex;justify-content:space-between;align-items:center}.viewer-top .brand{color:#f7eedb}.viewer-top .brand-mark{background:#f4f0d9;color:#174a38}.viewer-wrap{max-width:860px;margin:0 auto;padding:20px 24px 80px;text-align:center}.viewer-kicker{color:#d9b985;letter-spacing:.21em;text-transform:uppercase;font-size:12px;font-weight:750}.viewer-title{font-size:clamp(32px,5vw,53px);line-height:1.1;margin:11px 0 27px}.viewer-wrap .card-scene{padding:50px 12%;min-height:550px;border-radius:25px;box-shadow:0 25px 55px #0004}.viewer-wrap .card-inner{padding:44px clamp(24px,5vw,64px)}.viewer-wrap .card-message{font-size:clamp(17px,2.3vw,24px)}.viewer-wrap .card-heading{font-size:clamp(33px,5vw,51px)}.viewer-wrap .card-photo{height:155px;width:155px}.viewer-wrap .card-sticker{font-size:34px}.viewer-wrap .card-scene:after{bottom:16px}.action-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin:25px 0}.action-row .btn{font-size:13px}.action-row .btn-ghost{background:#ffffff13;border-color:#ffffff4a;color:#fff}.action-row .btn-ghost:hover{background:#ffffff28}.viewer-note{font-size:12px;color:#b8cabe}.guestbook{background:#fbf9f1;color:#213d31;border-radius:24px;border:1px solid #e4e6dc;padding:30px;margin:38px auto 0;max-width:750px;text-align:left;box-shadow:0 20px 35px #0003}.guestbook-heading{font-family:Georgia,serif;font-size:29px;margin:0 0 6px}.guestbook-intro{color:#697b70;font-size:13px;margin:0 0 20px}.guestbook .field{background:white}.guestbook .btn{width:100%}.reaction-list{border-top:1px solid #e2e4db;margin-top:24px;padding-top:21px;max-height:320px;overflow:auto}.reaction-item{border-bottom:1px solid #e9eae4;padding:13px 0}.reaction-item:last-child{border-bottom:0}.reaction-top{display:flex;gap:8px;justify-content:space-between;align-items:center;flex-wrap:wrap}.reaction-top strong{font-size:13px}.reaction-top time{color:#8a958d;font-size:11px}.reaction-item p{font-size:13px;color:#536759;overflow-wrap:anywhere;margin:5px 0}.alert-success{padding:11px 14px;background:#e4f2e9;border:1px solid #a9cfb6;color:#1b573c;border-radius:11px;font-size:13px;margin-bottom:20px}.viewer-footer{font-size:12px;margin-top:32px;color:#b0c9b7}.viewer-footer a{color:#e8d0a1;text-underline-offset:4px}.audio-button{color:#fff;border:1px solid #fff7;background:#ffffff20;border-radius:35px;padding:9px 14px;font-size:12px;font-weight:700}.audio-button:hover{background:#ffffff35}.snow-decoration{position:fixed;inset:0;pointer-events:none;z-index:3;opacity:.15;background-image:radial-gradient(white 1.2px,transparent 1.2px);background-size:45px 45px;animation:snowdrift 24s linear infinite}@keyframes snowdrift{to{background-position:190px 680px}}
@media(max-width:1030px){.creator-layout{grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);gap:16px;padding:12px 18px 40px}.creator-panel{padding:28px}.preview-stage{padding:25px 14px}.card-scene{padding:41px 14px;min-height:440px}.card-inner{padding:30px 16px}.theme-tile{gap:8px}.theme-swatch{width:45px}}
@media(max-width:790px){.creator-layout{display:flex;flex-direction:column;max-width:660px}.creator-panel{width:100%}.preview-panel{position:static;width:100%}.topbar{padding:0 19px;height:66px}.topbar-note{display:none}.preview-stage{padding:26px}.card-scene{max-width:490px;margin:auto;min-height:420px}.viewer-wrap .card-scene{padding:38px 6%;min-height:510px}}
@media(max-width:520px){.creator-layout{padding:8px 12px 32px}.creator-panel{padding:23px 19px;border-radius:21px}.creator-title{font-size:38px}.theme-choices{grid-template-columns:1fr 1fr;gap:9px}.theme-tile{padding:7px}.theme-swatch{width:37px;height:43px}.theme-label{font-size:11px}.fields-two{grid-template-columns:1fr}.step{padding:22px 0}.preview-panel{border-radius:20px}.preview-top{padding:14px 18px}.preview-stage{padding:16px}.card-scene{padding:35px 12px;min-height:380px}.card-inner{padding:24px 18px}.card-heading{font-size:28px}.card-message{font-size:15px}.viewer-top{padding:14px 17px}.viewer-wrap{padding:16px 11px 70px}.viewer-title{font-size:36px}.viewer-wrap .card-scene{border-radius:15px;padding:40px 11px;min-height:480px}.viewer-wrap .card-inner{padding:34px 19px}.viewer-wrap .card-message{font-size:18px}.guestbook{padding:22px 17px;border-radius:17px}.action-row .btn{flex:1 1 45%;padding:10px;font-size:12px}.viewer-top .brand-small{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* v4: sześć osobnych projektów kartki (kolor pozostaje niezależny od projektu). */
.design-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-bottom:3px}
.design-option{display:block;cursor:pointer;min-width:0}.design-option input{position:absolute;opacity:0}
.design-tile{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;height:100%;border:1px solid #dce3da;border-radius:15px;padding:10px 7px 12px;background:#fff;transition:background .2s,border-color .2s,transform .2s}
.design-option:hover .design-tile{transform:translateY(-2px);border-color:#8bb89b}
.design-option input:checked+.design-tile{background:#edf6ee;border-color:#2d7753;box-shadow:0 0 0 2px #2d77532a}
.design-option input:focus-visible+.design-tile{outline:3px solid #c69b57;outline-offset:2px}
.design-tile strong{font-size:11px;line-height:1.25;color:#214835}.design-tile small{font-size:10px;line-height:1.3;color:#687b70}
.design-mini{width:100%;max-width:130px;height:71px;border-radius:9px;display:grid;place-items:center;border:1px solid #dfd0b3;box-shadow:inset 0 0 0 5px #fff4}
.design-mini span{font:32px Georgia,serif;color:#fffef6;text-shadow:0 2px 8px #0003}
.design-mini-classic{background:radial-gradient(circle at 50% 10%,#ad545f,#692130 80%)}
.design-mini-minimal{background:linear-gradient(135deg,#f9f4e5,#d8ded0)}.design-mini-minimal span{color:#6c8062}
.design-mini-alpine{background:linear-gradient(155deg,#92c6d5,#1d466d)}
.design-mini-midnight{background:radial-gradient(circle,#59618c,#151d44)}
.design-mini-botanical{background:linear-gradient(145deg,#a7b98e,#315c42)}
.design-mini-playful{background:linear-gradient(135deg,#ff9c8d,#f5c65e,#55a2a5)}
.card-ornament{position:absolute;pointer-events:none;z-index:1;inset:0}
.card-scene.design-minimal{background:linear-gradient(155deg,#e6e9e0,#f9f5e9 58%,#dce5d9);--highlight:#738872;--deep:#dae2da}
.card-scene.design-minimal:before{border-color:#74907780;border-radius:0;inset:17px}
.card-scene.design-minimal:after{content:'◇     ·     ◇';color:#5d7864}
.card-scene.design-minimal .card-glow{opacity:0}
.card-scene.design-minimal .card-inner{background:#fffefa;border:0;box-shadow:0 14px 45px #244c3523;border-radius:0;padding:42px 29px}
.card-scene.design-minimal .card-inner:before{border-color:#7897825c;inset:12px}
.card-scene.design-minimal .card-star{font-size:30px;color:#72917a}.card-scene.design-minimal .card-kicker{letter-spacing:.42em}
.card-scene.design-minimal .card-heading{color:#31594a;font-family:system-ui,-apple-system,sans-serif;letter-spacing:-.06em;font-weight:300}
.card-scene.design-minimal .card-message{font-family:system-ui,-apple-system,sans-serif;font-weight:300}
.card-scene.design-alpine{background:linear-gradient(155deg,#abd5eb 0%,#447a9b 50%,#152f58 100%);--highlight:#eefaff}
.card-scene.design-alpine .card-ornament{background:linear-gradient(15deg,#e3f1f5 13%,transparent 13.4%),linear-gradient(-22deg,#edf6f8 19%,transparent 19.4%),linear-gradient(27deg,#adc9db 23%,transparent 23.4%);opacity:.48}
.card-scene.design-alpine .card-inner{background:#f8fcfff1;border:2px solid #e9fbff;border-radius:20px;box-shadow:0 18px 48px #0b214881}
.card-scene.design-alpine .card-inner:before{border:1px dashed #78aab554;border-radius:13px}
.card-scene.design-alpine .card-star{color:#669dbb}.card-scene.design-alpine .card-heading{color:#23557c}
.card-scene.design-midnight{background:radial-gradient(circle at 57% 19%,#555282 0%,#2b305a 40%,#13182d 100%);--highlight:#f4d8a0}
.card-scene.design-midnight .card-glow{background-image:radial-gradient(#fceabb 1.4px,transparent 2px),radial-gradient(#ffe8ab 1px,transparent 2px);opacity:.75;background-size:38px 49px,73px 89px}
.card-scene.design-midnight .card-ornament:before{content:'☾';position:absolute;right:12%;top:11%;font-size:68px;color:#f9e3b9;filter:drop-shadow(0 0 18px #ffe1a794)}
.card-scene.design-midnight .card-inner{background:#182443e9;border:1px solid #dbba7f;border-radius:13px;box-shadow:0 14px 60px #0008;color:#fff7ea}
.card-scene.design-midnight .card-inner:before{border-color:#ddc08b64}
.card-scene.design-midnight .card-star,.card-scene.design-midnight .card-kicker,.card-scene.design-midnight .card-signoff{color:#dec38e}
.card-scene.design-midnight .card-heading,.card-scene.design-midnight .card-author{color:#ffe3a5}
.card-scene.design-midnight .card-message{color:#f5f2ed}
.card-scene.design-botanical{background:linear-gradient(145deg,#718f74,#295c4c 58%,#163c34);--highlight:#e9e3bf}
.card-scene.design-botanical .card-ornament:before,.card-scene.design-botanical .card-ornament:after{position:absolute;font:70px Georgia,serif;color:#d7e7bd9c}
.card-scene.design-botanical .card-ornament:before{content:'❧';left:10px;top:7px;transform:rotate(-32deg)}
.card-scene.design-botanical .card-ornament:after{content:'❧';right:3px;bottom:5px;transform:rotate(142deg)}
.card-scene.design-botanical .card-inner{background:#fffdf0ed;border:2px solid #acc39c;border-radius:5px}
.card-scene.design-botanical .card-inner:before{border-color:#6d9b6655}.card-scene.design-botanical .card-heading{color:#366f48}
.card-scene.design-botanical .card-rule{width:86px;background:#789a65;height:2px}
.card-scene.design-playful{background:radial-gradient(circle at 15% 15%,#ffcf6c 0%,transparent 28%),radial-gradient(circle at 90% 80%,#61b8b5 0%,transparent 29%),linear-gradient(130deg,#f3817e,#e25369);--highlight:#fff6d5}
.card-scene.design-playful .card-glow{background-image:radial-gradient(#fff9 3px,transparent 4px),radial-gradient(#ffe372b0 5px,transparent 6px);background-size:60px 70px,96px 88px;opacity:.65}
.card-scene.design-playful .card-inner{background:#fff9e9;border:4px solid #fff;border-radius:28px;box-shadow:0 13px 0 #6b244229,0 24px 46px #71182d67;transform:rotate(-1deg)}
.card-scene.design-playful .card-inner:before{border:2px dashed #eaac80;border-radius:19px}
.card-scene.design-playful .card-star{color:#e9954e}.card-scene.design-playful .card-heading{color:#bc4a60;font-weight:700}
.card-scene.design-playful .card-author{color:#ae4561}.card-scene.design-playful .card-message{color:#564052}
.card-scene.design-playful .card-photo{border-radius:16px;transform:rotate(3deg)}
/* Eksport kartki uwzględnia aktualny układ na ekranie i nie obejmuje przycisków ani księgi gości. */
.action-row{flex-wrap:wrap}
@media(max-width:1100px){.design-choices{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.design-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.design-mini{height:62px}.card-scene.design-minimal .card-inner{padding:30px 16px}.card-scene.design-midnight .card-ornament:before{font-size:48px}}
/* Kreator Premium / animowana koperta */
.premium-toolbar{padding:18px;border:1px solid #c9ddd3;border-radius:18px;background:#eff7f2;margin:18px 0}
.premium-toolbar>strong{display:block;color:#15543b;font-size:16px;margin-bottom:5px}
.premium-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:12px 0}
.premium-controls label{display:grid;gap:6px;font-size:12px;font-weight:700;color:#25523c}
.premium-controls input[type=range]{accent-color:#226248;width:100%}
.draft-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.draft-row .btn{font-size:12px;padding:10px 14px;min-height:38px}
.design-option[hidden]{display:none!important}
.card-scene .card-heading{font-size:clamp(26px,var(--title-size,42px),64px)}
.card-scene .card-message{font-size:clamp(12px,var(--body-size,18px),28px);position:relative;left:calc(var(--text-x,50%) - 50%);top:calc(var(--text-y,50%) - 50%)}
.card-scene.font-sans .card-heading,.card-scene.font-sans .card-message{font-family:Arial,Helvetica,sans-serif!important}
.card-scene.font-script .card-heading,.card-scene.font-script .card-message{font-family:'Brush Script MT','Segoe Script',cursive!important}
.editable-message{cursor:grab;touch-action:none;border-radius:8px;outline-offset:6px}
.editable-message:active{cursor:grabbing}
.editable-message:focus-visible{outline:2px dashed #efda9a}
.envelope-mode .envelope{position:relative;z-index:3;display:block;width:min(100%,540px);aspect-ratio:1.65;margin:45px auto 22px;border:2px solid #f7ddb3;border-radius:10px;background:linear-gradient(160deg,#ead8ad,#b48463);box-shadow:0 30px 60px #0005;color:#523a2a;overflow:hidden;cursor:pointer;text-align:center;transition:transform .75s ease,opacity .4s ease,max-height .5s ease}
.envelope:before,.envelope:after{content:'';position:absolute;inset:0;pointer-events:none}
.envelope:before{clip-path:polygon(0 0,50% 64%,100% 0);background:#f3dcbc;filter:drop-shadow(0 2px 3px #0002)}
.envelope:after{clip-path:polygon(0 100%,50% 39%,100% 100%);background:#d7b18a}
.envelope strong,.envelope small,.envelope-seal{position:absolute;z-index:2;display:block;left:0;right:0}
.envelope strong{top:20%;font-size:clamp(17px,2vw,24px)}
.envelope small{bottom:10%;font-weight:bold}
.envelope-seal{top:54%;margin:auto;background:#a22f3f;border:3px solid #eabf8d;border-radius:50%;height:50px;width:50px;display:grid;place-items:center;color:white;font-size:24px;box-shadow:0 3px 10px #0004}
html.has-js .envelope-mode:not(.opened) #card-scene{position:absolute!important;width:1px!important;height:1px!important;opacity:0;overflow:hidden;pointer-events:none}
.envelope-mode.opened .envelope{transform:rotateX(85deg) translateY(-55px);opacity:0;max-height:0;margin:0 auto;pointer-events:none;padding:0}
.animation-stars .snow-decoration:before,.animation-stars .snow-decoration:after{content:'✦  ⋆  ✧  ✦  ⋆  ✧  ✦  ⋆  ✧  ✦';position:fixed;inset:0;color:#fff6;letter-spacing:4vw;font-size:24px;animation:ecard-stars 6s ease-in-out infinite alternate;pointer-events:none}
.animation-none .snow-decoration{display:none}
@keyframes ecard-stars{from{opacity:.15;transform:translateY(-12px)}to{opacity:.7;transform:translateY(20px)}}
@media(max-width:670px){.premium-controls{grid-template-columns:1fr}.draft-row .btn{flex:1 1 43%}.envelope-mode .envelope{margin-top:25px}}
@media(prefers-reduced-motion:reduce){.snow-decoration,.snow-decoration:before,.snow-decoration:after,.envelope,.card-glow{animation:none!important;transition:none!important}}

/* Motywy indywidualne: każdy wariant ma osobny kolor i układ akcentów. */
.card-scene.variant-golden-light{background:radial-gradient(circle at 20% 8%, color-mix(in srgb, #e7c88a 65%, var(--accent)) 0, transparent 43%), linear-gradient(148deg, color-mix(in srgb, #e7c88a 42%, var(--accent)),var(--deep));}
.design-mini-golden-light{background:linear-gradient(123deg,#e7c88a,#163d39)!important}
.card-scene.variant-golden-light .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-golden-light .card-star{color:#e7c88a}
.card-scene.variant-winter-letters{background:radial-gradient(circle at 27% 19%, color-mix(in srgb, #e4ebe8 65%, var(--accent)) 0, transparent 43%), linear-gradient(155deg, color-mix(in srgb, #e4ebe8 42%, var(--accent)),var(--deep));}
.design-mini-winter-letters{background:linear-gradient(130deg,#e4ebe8,#163d39)!important}
.card-scene.variant-winter-letters .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-winter-letters .card-star{color:#e4ebe8}
.card-scene.variant-frosted-window{background:radial-gradient(circle at 34% 30%, color-mix(in srgb, #bde6e8 65%, var(--accent)) 0, transparent 43%), linear-gradient(170deg, color-mix(in srgb, #bde6e8 42%, var(--accent)),var(--deep));}
.design-mini-frosted-window{background:linear-gradient(145deg,#bde6e8,#163d39)!important}
.card-scene.variant-frosted-window .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-frosted-window .card-star{color:#bde6e8}
.card-scene.variant-silver-snow{background:radial-gradient(circle at 41% 41%, color-mix(in srgb, #d0dbe3 65%, var(--accent)) 0, transparent 43%), linear-gradient(145deg, color-mix(in srgb, #d0dbe3 42%, var(--accent)),var(--deep));}
.design-mini-silver-snow{background:linear-gradient(120deg,#d0dbe3,#163d39)!important}
.card-scene.variant-silver-snow .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-silver-snow .card-star{color:#d0dbe3}
.card-scene.variant-nordic-red{background:radial-gradient(circle at 48% 8%, color-mix(in srgb, #e45a61 65%, var(--accent)) 0, transparent 43%), linear-gradient(165deg, color-mix(in srgb, #e45a61 42%, var(--accent)),var(--deep));}
.design-mini-nordic-red{background:linear-gradient(140deg,#e45a61,#163d39)!important}
.card-scene.variant-nordic-red .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-nordic-red .card-star{color:#e45a61}
.card-scene.variant-candlelight{background:radial-gradient(circle at 55% 19%, color-mix(in srgb, #f6b862 65%, var(--accent)) 0, transparent 43%), linear-gradient(180deg, color-mix(in srgb, #f6b862 42%, var(--accent)),var(--deep));}
.design-mini-candlelight{background:linear-gradient(155deg,#f6b862,#163d39)!important}
.card-scene.variant-candlelight .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-candlelight .card-star{color:#f6b862}
.card-scene.variant-retro-postcard{background:radial-gradient(circle at 62% 30%, color-mix(in srgb, #ae824c 65%, var(--accent)) 0, transparent 43%), linear-gradient(195deg, color-mix(in srgb, #ae824c 42%, var(--accent)),var(--deep));}
.design-mini-retro-postcard{background:linear-gradient(170deg,#ae824c,#163d39)!important}
.card-scene.variant-retro-postcard .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-retro-postcard .card-star{color:#ae824c}
.card-scene.variant-velvet-gold{background:radial-gradient(circle at 69% 41%, color-mix(in srgb, #bfa054 65%, var(--accent)) 0, transparent 43%), linear-gradient(160deg, color-mix(in srgb, #bfa054 42%, var(--accent)),var(--deep));}
.design-mini-velvet-gold{background:linear-gradient(135deg,#bfa054,#163d39)!important}
.card-scene.variant-velvet-gold .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-velvet-gold .card-star{color:#bfa054}
.card-scene.variant-mountain-cabin{background:radial-gradient(circle at 76% 8%, color-mix(in srgb, #815b45 65%, var(--accent)) 0, transparent 43%), linear-gradient(170deg, color-mix(in srgb, #815b45 42%, var(--accent)),var(--deep));}
.design-mini-mountain-cabin{background:linear-gradient(145deg,#815b45,#163d39)!important}
.card-scene.variant-mountain-cabin .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-mountain-cabin .card-star{color:#815b45}
.card-scene.variant-alpine-stars{background:radial-gradient(circle at 83% 19%, color-mix(in srgb, #9dc8f6 65%, var(--accent)) 0, transparent 43%), linear-gradient(160deg, color-mix(in srgb, #9dc8f6 42%, var(--accent)),var(--deep));}
.design-mini-alpine-stars{background:linear-gradient(135deg,#9dc8f6,#163d39)!important}
.card-scene.variant-alpine-stars .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-alpine-stars .card-star{color:#9dc8f6}
.card-scene.variant-ice-crystal{background:radial-gradient(circle at 20% 30%, color-mix(in srgb, #83d3e5 65%, var(--accent)) 0, transparent 43%), linear-gradient(200deg, color-mix(in srgb, #83d3e5 42%, var(--accent)),var(--deep));}
.design-mini-ice-crystal{background:linear-gradient(175deg,#83d3e5,#163d39)!important}
.card-scene.variant-ice-crystal .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-ice-crystal .card-star{color:#83d3e5}
.card-scene.variant-northern-lights{background:radial-gradient(circle at 27% 41%, color-mix(in srgb, #38ad98 65%, var(--accent)) 0, transparent 43%), linear-gradient(175deg, color-mix(in srgb, #38ad98 42%, var(--accent)),var(--deep));}
.design-mini-northern-lights{background:linear-gradient(150deg,#38ad98,#163d39)!important}
.card-scene.variant-northern-lights .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-northern-lights .card-star{color:#38ad98}
.card-scene.variant-starry-purple{background:radial-gradient(circle at 34% 8%, color-mix(in srgb, #966eb1 65%, var(--accent)) 0, transparent 43%), linear-gradient(165deg, color-mix(in srgb, #966eb1 42%, var(--accent)),var(--deep));}
.design-mini-starry-purple{background:linear-gradient(140deg,#966eb1,#163d39)!important}
.card-scene.variant-starry-purple .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-starry-purple .card-star{color:#966eb1}
.card-scene.variant-moonlit-snow{background:radial-gradient(circle at 41% 19%, color-mix(in srgb, #7d99d6 65%, var(--accent)) 0, transparent 43%), linear-gradient(158deg, color-mix(in srgb, #7d99d6 42%, var(--accent)),var(--deep));}
.design-mini-moonlit-snow{background:linear-gradient(133deg,#7d99d6,#163d39)!important}
.card-scene.variant-moonlit-snow .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-moonlit-snow .card-star{color:#7d99d6}
.card-scene.variant-holiday-sky{background:radial-gradient(circle at 48% 30%, color-mix(in srgb, #456daf 65%, var(--accent)) 0, transparent 43%), linear-gradient(165deg, color-mix(in srgb, #456daf 42%, var(--accent)),var(--deep));}
.design-mini-holiday-sky{background:linear-gradient(140deg,#456daf,#163d39)!important}
.card-scene.variant-holiday-sky .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-holiday-sky .card-star{color:#456daf}
.card-scene.variant-pine-cones{background:radial-gradient(circle at 55% 41%, color-mix(in srgb, #8b6f48 65%, var(--accent)) 0, transparent 43%), linear-gradient(155deg, color-mix(in srgb, #8b6f48 42%, var(--accent)),var(--deep));}
.design-mini-pine-cones{background:linear-gradient(130deg,#8b6f48,#163d39)!important}
.card-scene.variant-pine-cones .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-pine-cones .card-star{color:#8b6f48}
.card-scene.variant-winter-berries{background:radial-gradient(circle at 62% 8%, color-mix(in srgb, #a53a4d 65%, var(--accent)) 0, transparent 43%), linear-gradient(185deg, color-mix(in srgb, #a53a4d 42%, var(--accent)),var(--deep));}
.design-mini-winter-berries{background:linear-gradient(160deg,#a53a4d,#163d39)!important}
.card-scene.variant-winter-berries .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-winter-berries .card-star{color:#a53a4d}
.card-scene.variant-green-wreath{background:radial-gradient(circle at 69% 19%, color-mix(in srgb, #4b9874 65%, var(--accent)) 0, transparent 43%), linear-gradient(210deg, color-mix(in srgb, #4b9874 42%, var(--accent)),var(--deep));}
.design-mini-green-wreath{background:linear-gradient(185deg,#4b9874,#163d39)!important}
.card-scene.variant-green-wreath .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-green-wreath .card-star{color:#4b9874}
.card-scene.variant-forest-magic{background:radial-gradient(circle at 76% 30%, color-mix(in srgb, #315c4d 65%, var(--accent)) 0, transparent 43%), linear-gradient(145deg, color-mix(in srgb, #315c4d 42%, var(--accent)),var(--deep));}
.design-mini-forest-magic{background:linear-gradient(120deg,#315c4d,#163d39)!important}
.card-scene.variant-forest-magic .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-forest-magic .card-star{color:#315c4d}
.card-scene.variant-snowman-party{background:radial-gradient(circle at 83% 41%, color-mix(in srgb, #cde0f0 65%, var(--accent)) 0, transparent 43%), linear-gradient(140deg, color-mix(in srgb, #cde0f0 42%, var(--accent)),var(--deep));}
.design-mini-snowman-party{background:linear-gradient(115deg,#cde0f0,#163d39)!important}
.card-scene.variant-snowman-party .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-snowman-party .card-star{color:#cde0f0}
.card-scene.variant-gingerbread{background:radial-gradient(circle at 20% 8%, color-mix(in srgb, #bb8055 65%, var(--accent)) 0, transparent 43%), linear-gradient(170deg, color-mix(in srgb, #bb8055 42%, var(--accent)),var(--deep));}
.design-mini-gingerbread{background:linear-gradient(145deg,#bb8055,#163d39)!important}
.card-scene.variant-gingerbread .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-gingerbread .card-star{color:#bb8055}
.card-scene.variant-kids-forest{background:radial-gradient(circle at 27% 19%, color-mix(in srgb, #96b77c 65%, var(--accent)) 0, transparent 43%), linear-gradient(190deg, color-mix(in srgb, #96b77c 42%, var(--accent)),var(--deep));}
.design-mini-kids-forest{background:linear-gradient(165deg,#96b77c,#163d39)!important}
.card-scene.variant-kids-forest .card-inner{border-radius:12px;transform:rotate(0deg)}
.card-scene.variant-kids-forest .card-star{color:#96b77c}
.card-scene.variant-reindeer-dance{background:radial-gradient(circle at 34% 30%, color-mix(in srgb, #a98758 65%, var(--accent)) 0, transparent 43%), linear-gradient(175deg, color-mix(in srgb, #a98758 42%, var(--accent)),var(--deep));}
.design-mini-reindeer-dance{background:linear-gradient(150deg,#a98758,#163d39)!important}
.card-scene.variant-reindeer-dance .card-inner{border-radius:20px;transform:rotate(0.6deg)}
.card-scene.variant-reindeer-dance .card-star{color:#a98758}
.card-scene.variant-family-hearth{background:radial-gradient(circle at 41% 41%, color-mix(in srgb, #c88b62 65%, var(--accent)) 0, transparent 43%), linear-gradient(180deg, color-mix(in srgb, #c88b62 42%, var(--accent)),var(--deep));}
.design-mini-family-hearth{background:linear-gradient(155deg,#c88b62,#163d39)!important}
.card-scene.variant-family-hearth .card-inner{border-radius:30px;transform:rotate(0deg)}
.card-scene.variant-family-hearth .card-star{color:#c88b62}
.card-scene.variant-corporate-gold{background:radial-gradient(circle at 48% 8%, color-mix(in srgb, #8f7043 65%, var(--accent)) 0, transparent 43%), linear-gradient(160deg, color-mix(in srgb, #8f7043 42%, var(--accent)),var(--deep));}
.design-mini-corporate-gold{background:linear-gradient(135deg,#8f7043,#163d39)!important}
.card-scene.variant-corporate-gold .card-inner{border-radius:4px;transform:rotate(-0.6deg)}
.card-scene.variant-corporate-gold .card-star{color:#8f7043}

.owner-controls{max-width:700px;margin:30px auto;border:1px solid #e0cba5;border-radius:14px;padding:18px;color:#fff1d5}.owner-controls summary{cursor:pointer;font-weight:700}.owner-controls p,.owner-controls small{font-size:13px;opacity:.83;display:block;margin:10px 0}

/* v8 — koperty, kolaże, niespodzianki, kod QR, prostsza wersja mobilna */
.v8-options{margin:19px 0 23px;padding:19px;border:1px solid #d8e3d7;border-radius:18px;background:linear-gradient(135deg,#f7fbf5,#fdf9f0)}
.v8-options h3{font-size:15px;color:#24543d;font-weight:800;margin:0 0 15px}
.v8-options .checkline{margin-top:15px}
.envelope-mini{--mini-top:#a52b48;--mini-bottom:#611e34;display:grid;place-items:center;gap:9px;text-align:center;position:relative;isolation:isolate;border-radius:13px;background:linear-gradient(150deg,var(--mini-top),var(--mini-bottom));color:#ffecd2;min-height:115px;margin-top:13px;overflow:hidden;box-shadow:0 8px 18px #0002}
.envelope-mini:before{content:"";position:absolute;inset:0;clip-path:polygon(0 0,50% 69%,100% 0);background:#ffffff1c;z-index:-1}
.envelope-mini.color-forest{--mini-top:#2d7555;--mini-bottom:#103e32}.envelope-mini.color-gold{--mini-top:#c49b55;--mini-bottom:#795429}.envelope-mini.color-frost{--mini-top:#83bfda;--mini-bottom:#416987}
.mini-seal{background:#e8c487;color:#654222;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:18px}
.show-designs{margin-bottom:17px;width:100%;justify-content:center}
.design-choices:not(.expanded):not(.searching) .design-option:nth-child(n+9){display:none}
.card-photo[hidden],.card-collage[hidden]{display:none!important}
.card-collage{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;max-width:320px;margin:4px auto 12px;justify-content:center}
.card-collage.collage-count-1{display:flex;justify-content:center}
.card-collage.collage-count-2{grid-template-columns:repeat(2,minmax(0,1fr));max-width:230px}
.card-collage.collage-count-4{grid-template-columns:repeat(2,minmax(0,1fr));max-width:240px}
.card-collage .card-photo{display:block;width:100%;height:92px;min-width:0;object-fit:cover;border:3px solid #fff;border-radius:10px;margin:0;box-shadow:0 4px 12px #53422538}
.card-collage.collage-count-1 .card-photo{width:112px;height:112px;border-radius:50%}
.viewer-wrap .card-collage{max-width:330px}
.viewer-wrap .card-collage .card-photo{height:95px}
.envelope-mode .envelope.envelope-color-ruby{background:linear-gradient(150deg,#c76178,#66273e);color:#fff3e1;border-color:#d99d9e}
.envelope-mode .envelope.envelope-color-forest{background:linear-gradient(155deg,#83b59c,#295b4b);color:#fffae6;border-color:#9fcfb0}
.envelope-mode .envelope.envelope-color-gold{background:linear-gradient(155deg,#f2dbac,#bc9254);color:#50361b;border-color:#f8e9bb}
.envelope-mode .envelope.envelope-color-frost{background:linear-gradient(155deg,#b7e5f5,#5189ad);color:#203f56;border-color:#d5f0fb}
.envelope.envelope-color-ruby:before{background:#bf546e}.envelope.envelope-color-ruby:after{background:#a44560}
.envelope.envelope-color-forest:before{background:#75aa91}.envelope.envelope-color-forest:after{background:#387662}
.envelope.envelope-color-frost:before{background:#b8e1ef}.envelope.envelope-color-frost:after{background:#8fc7e3}
.envelope strong{padding:0 20px;overflow-wrap:anywhere}
.envelope-seal{background:#9c3045}
.surprise-box{max-width:620px;margin:25px auto;border:1px solid #e6cb9b;border-radius:20px;background:linear-gradient(125deg,#fff6db,#ffffff);padding:21px 26px;color:#2e5040;box-shadow:0 8px 35px #140e1030}
.surprise-box summary{list-style:none;cursor:pointer;font-weight:800;text-align:center;font-size:17px}.surprise-box summary::-webkit-details-marker{display:none}
.surprise-box[open] p{margin-top:20px;white-space:normal;overflow-wrap:anywhere;line-height:1.8;text-align:center;animation:surprise-pop .35s both}
@keyframes surprise-pop{from{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}
.countdown-box{text-align:center;border:1px solid #e0cba5;border-radius:18px;padding:18px;margin:24px auto;max-width:620px;background:#fff7e8;color:#3c4c3d}.countdown-box span,.countdown-box strong{display:block}.countdown-box strong{font-size:22px;margin-top:5px}
.qr-panel{max-width:630px;margin:24px auto;background:#fffef8;border:1px solid #ddd0b4;border-radius:18px;padding:25px;text-align:center;color:#244839}
.qr-panel[hidden]{display:none}.qr-panel h2{font-size:21px;font-weight:750}.qr-panel p{font-size:13px;margin:12px auto 16px;max-width:370px}
#qr-code{display:flex;justify-content:center;margin:22px auto}#qr-code img,#qr-code canvas{border:10px solid white;max-width:100%;height:auto}
.mobile-preview-toggle{display:none}
@media(max-width:790px){.mobile-preview-toggle{display:block;width:calc(100% - 22px);margin:0 auto 10px;text-align:center}.creator-js .preview-panel:not(.mobile-preview-open){display:none}.creator-js .mobile-preview-toggle{display:block}}
@media(max-width:520px){.v8-options{padding:14px}.card-collage{gap:4px}.card-collage .card-photo,.viewer-wrap .card-collage .card-photo{height:75px}.envelope strong{font-size:16px!important}}
@media(prefers-reduced-motion:reduce){.surprise-box[open] p{animation:none!important}}
@media print{body.qr-print .viewer-top,body.qr-print .viewer-kicker,body.qr-print .viewer-title,body.qr-print .envelope,body.qr-print #card-scene,body.qr-print .surprise-box,body.qr-print .countdown-box,body.qr-print .viewer-note,body.qr-print .action-row,body.qr-print .owner-controls,body.qr-print .guestbook,body.qr-print .viewer-footer{display:none!important}body.qr-print .qr-panel{display:block!important;box-shadow:none!important;border:0!important;break-inside:avoid}}
.surprise-box p{color:#244f3a!important;font-size:16px!important;opacity:1!important;line-height:1.7}

/* === v9: interakcje, okazje i prywatny zegar === */
.occasion-hero{background:linear-gradient(130deg,#123f32 20%,#28624d);color:white;padding:20px 24px;border-radius:20px;margin:0 0 25px;border-left:5px solid var(--v9-accent,#c39a56)}
.occasion-hero span{font-size:11px;text-transform:uppercase;letter-spacing:.13em;color:var(--v9-accent,#c39a56);font-weight:800;display:block}
.occasion-hero strong{display:block;font:normal 25px Georgia,serif;margin:5px 0 2px}.occasion-hero p{font-size:13px;opacity:.91;margin:0}
.v9-compose-panel,.v9-wishes-panel,.v9-unlock{border:1px solid #cbd9cd;background:#f1f7f0;padding:16px 18px;border-radius:18px;margin:16px 0}
.v9-compose-panel{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.v9-compose-panel .field-hint{flex-basis:100%;margin:0}.v9-wishes-panel strong{display:block;margin-bottom:5px}.v9-wishes-panel input{margin-top:11px}
.globe-preview-note{text-align:center;font-size:12px;color:#fde9bb;padding:10px}
.card-scene .card-kicker,.card-scene .card-star,.card-scene .card-signoff{color:var(--v9-accent,#c39a56)}
.card-scene .card-rule{border-color:var(--v9-accent,#c39a56)}
.locked-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,#285a4b,#0d2c25);color:#fff;padding:20px;text-align:center}
.locked-shell{max-width:590px;padding:45px 25px;border:1px solid #ffffff30;border-radius:30px;background:#ffffff0e;box-shadow:0 25px 75px #0004}
.locked-shell h1{font-size:clamp(34px,7vw,56px);line-height:1.1;margin:12px 0}.locked-shell p{color:#e6f0e9}.locked-shell .muted{font-size:13px}.locked-star{font-size:50px;color:#edc785}.locked-count{font-size:clamp(20px,4vw,31px);font-weight:800;color:#f8d894;letter-spacing:.02em;margin:25px 0}
.v9-globe-section{text-align:center;background:linear-gradient(145deg,#173c37,#0c282e);color:#fff;border-radius:26px;padding:30px 15px 34px;margin:30px auto;max-width:680px;overflow:hidden}
.v9-globe-section h2{font-size:30px;margin:7px 0}.v9-globe-section p{font-size:13px;color:#b9d8d5;margin:0 0 12px}
.snow-globe{width:min(270px,76vw);height:min(270px,76vw);position:relative;border:8px solid #c3d9db;border-radius:50%;margin:12px auto 0;overflow:hidden;cursor:pointer;isolation:isolate;background:radial-gradient(circle at 35% 17%,#98d7e3,#34596c 45%,#152d3f 95%);box-shadow:inset -28px -25px 40px #04142188,inset 12px 10px 24px #ffffff44,0 15px 40px #0008}
.snow-globe:focus-visible{outline:4px solid #eac887;outline-offset:6px}.globe-sky{position:absolute;inset:0;background:radial-gradient(circle at 25% 16%,#ffffff78,transparent 28%);z-index:5;pointer-events:none}.globe-moon{position:absolute;width:46px;height:46px;border-radius:100%;top:33px;right:55px;background:#ffe6a5;box-shadow:0 0 30px #ffe6a5aa}
.globe-ground{position:absolute;bottom:-45px;left:-20px;right:-20px;height:115px;border-radius:50% 50% 0 0;background:linear-gradient(#e5f4f3,#8dbecc);z-index:3}
.globe-tree{position:absolute;bottom:56px;left:55px;width:92px;height:130px;background:#0e5845;clip-path:polygon(50% 0,83% 48%,70% 48%,100% 90%,0 90%,30% 48%,17% 48%);z-index:4;filter:drop-shadow(1px 1px 4px #1118)}
.globe-house{position:absolute;bottom:54px;right:33px;width:74px;height:55px;border-radius:4px;background:#9b4b47;z-index:4;box-shadow:inset -10px -10px 0 #693b42}
.globe-house:before{content:'';position:absolute;bottom:52px;left:-10px;border-left:47px solid transparent;border-right:47px solid transparent;border-bottom:33px solid #f5eadf;transform:rotate(180deg)}
.globe-house i{position:absolute;left:30px;top:15px;background:#ffe7a3;width:20px;height:22px;box-shadow:0 0 14px #ffe7a3}
.globe-flake{position:absolute;z-index:6;top:var(--flake-x);left:var(--flake-x);width:var(--flake-size);height:var(--flake-size);border-radius:50%;background:white;box-shadow:0 0 6px #fff}
.snow-globe.shaking .globe-flake{animation:globeSwirl 2.5s ease-in-out var(--flake-delay) both}.snow-globe.shaking{animation:globeNudge .5s ease-in-out}
.globe-base{margin:-8px auto 14px;width:min(250px,70vw);border-radius:9px 9px 22px 22px;background:linear-gradient(#b88d50,#76552c);box-shadow:inset 0 3px 6px #e4cb9f80,0 12px 22px #0005;padding:17px 10px 11px;font-size:13px;font-weight:800;color:#fff0cc;letter-spacing:.08em}
@keyframes globeSwirl{0%{transform:translate(0,0);opacity:.4}35%{transform:translate(25px,-85px);opacity:1}65%{transform:translate(-30px,-25px)}100%{transform:translate(10px,95px);opacity:.1}}
@keyframes globeNudge{0%,100%{transform:rotate(0)}35%{transform:rotate(-4deg)}70%{transform:rotate(4deg)}}
.owner-reply{margin:13px 0 0 18px;padding:13px 15px;border-left:3px solid #b38d54;background:#f0f5ef;border-radius:6px;font-size:13px}.owner-reply p{margin:6px 0 0;white-space:pre-wrap}
.reply-form{margin-top:15px}.reply-form label{display:block;font-size:12px;font-weight:700}.reply-form textarea{display:block;width:100%;border:1px solid #cfddd0;border-radius:10px;resize:vertical;min-height:60px;padding:10px;margin:6px 0}.reply-form button{min-height:36px;font-size:12px;padding:8px 14px}
@media (prefers-reduced-motion:reduce){.snow-globe.shaking,.snow-globe.shaking .globe-flake{animation:none!important}html{scroll-behavior:auto}}
/* v10: konfiguracja wizualna wyłącznie z białych list, bez CSS dostarczanego przez użytkownika */
.card-scene.v10-frame-none{box-shadow:none}.card-scene.v10-frame-single{outline:3px solid var(--v9-accent);outline-offset:-12px}.card-scene.v10-frame-double{outline:double 8px var(--v9-accent);outline-offset:-14px}.card-scene.v10-frame-ornate{outline:ridge 9px var(--v9-accent);outline-offset:-12px}.card-scene.v10-font-sans .card-heading{font-family:system-ui,sans-serif!important;font-weight:700}.card-scene.v10-font-script .card-heading{font-family:cursive!important;font-style:italic}.card-scene.v10-deco-snow .card-star:after{content:' ❄ ❅';color:var(--v9-accent)}.card-scene.v10-deco-branches .card-star:after{content:' ❦ ✦';color:var(--v9-accent)}.card-scene.v10-deco-none .card-star{display:none}
.creator-intro{color:#e6d5b2;max-width:600px;line-height:1.8;margin:10px auto 0;text-align:center}

.v10-creator-footer{text-align:center;background:#103b2e;color:#f3e9cd;padding:38px 20px}.v10-creator-footer strong{font:24px Georgia,serif}.v10-creator-footer p{font-size:14px;color:#c9d9d0;margin:10px auto 0;max-width:650px;line-height:1.6}


/* Compatibility foundation from v11.1 */

:root{--brand-950:#102d24;--brand-900:#14372c;--brand-800:#1d4d3c;--brand-700:#275f49;--brand-600:#2f7359;--text-900:#163127;--text-700:#496257;--line:#dbe6df;--shadow-md:0 16px 40px rgba(16,45,36,.10)}
html{scroll-behavior:smooth}
body.creator-body,body.viewer-body,body.locked-body{background:radial-gradient(circle at top left, rgba(218,186,127,.16), transparent 35%),linear-gradient(180deg,#f7f4ef 0%,#f7faf8 48%,#eef5f1 100%);color:var(--text-900)}
body.creator-body::before,body.viewer-body::before,body.locked-body::before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.45) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.45) 1px, transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg, rgba(0,0,0,.15), transparent 70%);opacity:.24}
.topbar,.viewer-top{position:sticky;top:0;z-index:30;backdrop-filter:blur(18px);background:rgba(247,250,248,.82);border-bottom:1px solid rgba(16,45,36,.08)}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px clamp(18px,3vw,38px)}
.topbar-links{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.topbar-link,.viewer-top-link{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid rgba(16,45,36,.08);border-radius:999px;color:var(--brand-900);font-weight:600;background:rgba(255,255,255,.7)}
.topbar-note{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(199,161,97,.12);color:var(--brand-800);font-size:13px;font-weight:700}
.brand.brand-logo,.viewer-top .brand.brand-logo{display:inline-flex;align-items:center}.brand.brand-logo img,.admin-logo-image,.login-logo img,.privacy-brand img{height:48px;width:auto;display:block}
.creator-layout{max-width:1480px;margin:0 auto;padding:clamp(18px,2vw,28px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:28px;align-items:start}
.creator-panel,.preview-panel,.guestbook,.qr-panel,.owner-controls,.surprise-box,.countdown-box,.viewer-note,.locked-shell,.privacy-paper,.marketing-band,.viewer-info-band{background:rgba(255,255,255,.82);backdrop-filter:blur(14px);border:1px solid rgba(16,45,36,.08);box-shadow:var(--shadow-md)}
.creator-panel{padding:clamp(24px,2.5vw,38px);border-radius:34px}.preview-panel{position:sticky;top:92px;border-radius:32px;padding:18px;overflow:hidden}
.hero-badge{display:inline-flex;align-items:center;gap:10px;padding:10px 14px;border-radius:999px;background:linear-gradient(135deg,rgba(39,95,73,.12),rgba(199,161,97,.12));color:var(--brand-800);font-weight:800;letter-spacing:.06em;text-transform:uppercase;font-size:12px}
.creator-title,.viewer-title{font-size:clamp(2.35rem,4vw,4.45rem);line-height:1.02;letter-spacing:-.03em;color:var(--brand-950);margin-top:18px}.creator-intro{max-width:66ch;color:var(--text-700);font-size:1.05rem;line-height:1.72}
.hero-metrics,.hero-benefits,.journey-grid,.marketing-grid,.viewer-summary-grid,.viewer-service-points{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:22px}.hero-metrics article,.hero-benefits article,.journey-grid article,.marketing-grid article,.viewer-summary-grid article,.viewer-service-points article{padding:18px;border-radius:22px;background:linear-gradient(180deg,#fff,#f5f8f5);border:1px solid var(--line)}
.hero-metrics strong,.viewer-summary-grid strong{display:block;font-size:1.55rem;color:var(--brand-950)}.hero-metrics span,.viewer-summary-grid span{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#75887e;font-weight:800;margin-bottom:8px}.hero-benefits h3,.journey-grid h3,.marketing-grid h3,.viewer-service-points h3{font-size:1rem;margin-bottom:8px;color:var(--brand-900)}.hero-benefits p,.journey-grid p,.marketing-grid p,.viewer-service-points p{font-size:.95rem;color:var(--text-700);line-height:1.6}
.step{padding:24px;border:1px solid rgba(16,45,36,.08);border-radius:28px;background:linear-gradient(180deg,rgba(255,255,255,.94),rgba(247,250,248,.82));margin-bottom:18px}.step-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.step-no{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,var(--brand-900),var(--brand-700));color:#fff;font-weight:800;box-shadow:0 16px 34px rgba(20,55,44,.22)}.step h2{font-size:1.45rem;color:var(--brand-950)}
.field-label{font-weight:700;color:var(--brand-950);margin-bottom:8px;display:block}.field,.field-textarea,select,input[type="search"],input[type="email"],input[type="text"],input[type="datetime-local"],textarea{border:1px solid #cfe0d7!important;background:#fff!important;border-radius:16px!important;padding:14px 16px!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.field:focus,.field-textarea:focus,select:focus,input:focus,textarea:focus{outline:none;border-color:var(--brand-600)!important;box-shadow:0 0 0 4px rgba(47,115,89,.12)!important}
.checkline,.theme-option .theme-tile,.design-tile,.sticker-choice span,.v8-options,.v9-compose-panel,.v9-wishes-panel,.premium-toolbar,.occasion-hero,.file-picker{border-radius:22px}.theme-option .theme-tile,.design-tile,.sticker-choice span,.file-picker,.v8-options,.v9-compose-panel,.v9-wishes-panel,.premium-toolbar,.occasion-hero{border:1px solid rgba(16,45,36,.08);background:linear-gradient(180deg,#fff,#f5f8f5)}.theme-option input:checked + .theme-tile,.design-option input:checked + .design-tile,.sticker-choice input:checked + span{border-color:var(--brand-600);box-shadow:0 0 0 4px rgba(47,115,89,.12)}
.btn,.btn-primary,.btn-ghost,.btn-soft,.btn-black,.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:13px 18px;border-radius:16px;border:1px solid transparent;text-decoration:none;font-weight:700;cursor:pointer;transition:transform .15s ease}.btn:hover,.btn-primary:hover,.btn-ghost:hover,.btn-soft:hover,.btn-black:hover,.btn-outline:hover{transform:translateY(-1px)}.btn-primary,.btn-black{background:linear-gradient(135deg,var(--brand-900),var(--brand-700))!important;color:#fff!important;box-shadow:0 14px 30px rgba(20,55,44,.22)}.btn-ghost,.btn-outline{border-color:#cfe0d7!important;background:#fff!important;color:var(--brand-900)!important}.btn-soft{background:rgba(199,161,97,.12)!important;color:var(--brand-900)!important;border-color:rgba(199,161,97,.24)!important}.creator-submit{position:sticky;bottom:12px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid rgba(16,45,36,.08);border-radius:26px;padding:20px;box-shadow:var(--shadow-md)}.full{width:100%}
.preview-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#75887e;font-weight:800;padding:8px 6px 14px}.preview-stage{padding:16px;border-radius:28px;background:linear-gradient(180deg,#fff,#f5f8f5)}.card-scene{border-radius:30px;box-shadow:0 28px 60px rgba(16,45,36,.18)}.preview-bottom{padding:14px 8px 2px;text-align:center;color:#768c81;font-weight:700}
.marketing-band{max-width:1480px;margin:26px auto 30px;padding:clamp(22px,3vw,34px);border-radius:34px}.marketing-band h2{font-size:clamp(1.8rem,2.6vw,2.8rem);color:var(--brand-950);margin-bottom:8px}.marketing-band p.section-intro{color:var(--text-700);max-width:70ch;margin-bottom:22px}
.viewer-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px clamp(18px,3vw,38px)}.viewer-top-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.viewer-wrap{max-width:1100px;margin:0 auto;padding:clamp(18px,3vw,34px) 18px 60px}.viewer-kicker{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(199,161,97,.12);color:var(--brand-800);font-weight:800;letter-spacing:.08em;text-transform:uppercase;font-size:12px;margin-bottom:14px}.viewer-summary-grid{margin:22px 0 24px}.action-row{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.action-row .btn-ghost{background:#fff!important}.viewer-info-band{margin:10px 0 26px;padding:20px;border-radius:24px}.viewer-footer{padding:22px 0 0;color:#6b8177;text-align:center;font-size:.95rem}
.guestbook{padding:clamp(22px,3vw,34px);border-radius:30px;margin-top:26px}.guestbook-heading{font-size:clamp(1.8rem,2.6vw,2.6rem);color:var(--brand-950);margin:10px 0}.reaction-item,.owner-reply,.reply-form textarea,.qr-panel,.owner-controls,.surprise-box,.countdown-box,.viewer-note,.locked-count{border-radius:20px}.reaction-item,.qr-panel,.owner-controls,.surprise-box,.countdown-box,.viewer-note{border:1px solid rgba(16,45,36,.08);background:linear-gradient(180deg,#fff,#f6f9f6)}.reaction-item{padding:16px 18px}.reaction-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.owner-reply{margin-top:12px;padding:12px 14px;background:rgba(236,244,239,.9);border:1px solid #d3e2d8}.reply-form label{display:block;font-weight:700;font-size:.95rem;color:var(--brand-900)}.reply-form textarea{width:100%;border:1px solid #cfe0d7;padding:12px 14px;margin:10px 0 12px;background:#fff}
.envelope{box-shadow:var(--shadow-md)}.audio-button{background:#fff;border:1px solid rgba(16,45,36,.08);padding:12px 16px;border-radius:16px;font-weight:700;color:var(--brand-900)}.locked-shell{max-width:720px;padding:clamp(28px,5vw,46px);border-radius:34px;margin:10vh auto 24px;text-align:center}.locked-shell .eyebrow{display:inline-flex;padding:10px 14px;border-radius:999px;background:rgba(199,161,97,.14);font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-800)}.locked-shell h1{font-size:clamp(2.2rem,4vw,4rem);line-height:1.02;margin:18px 0;color:var(--brand-950)}.locked-count{padding:18px 20px;background:#fff;border:1px solid var(--line);font-weight:800;font-size:1.1rem;color:var(--brand-950);margin:18px 0 14px}.privacy-wrap{max-width:1100px;padding:26px 18px 60px}.privacy-brand{display:flex;justify-content:center;margin-bottom:18px}.privacy-paper{border-radius:34px}.admin-link-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(16,45,36,.08);font-weight:700;color:var(--brand-900)}
@media (max-width:1180px){.creator-layout{grid-template-columns:1fr}.preview-panel{position:relative;top:auto}}@media (max-width:900px){.hero-metrics,.hero-benefits,.journey-grid,.marketing-grid,.viewer-summary-grid,.viewer-service-points{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.topbar,.viewer-top{padding:14px 16px;align-items:flex-start;flex-direction:column}.topbar-links,.viewer-top-actions{width:100%}.brand.brand-logo img,.admin-logo-image,.login-logo img,.privacy-brand img{height:42px}.creator-layout{padding:14px}.creator-panel{padding:18px;border-radius:26px}.step{padding:18px;border-radius:22px}.marketing-band,.guestbook,.locked-shell,.privacy-paper{border-radius:26px}}@media (max-width:560px){.hero-metrics,.hero-benefits,.journey-grid,.marketing-grid,.viewer-summary-grid,.viewer-service-points{grid-template-columns:1fr}.topbar-note{display:none}}


/* E-Świąteczna Kartka v11.2 — public design system
   Shared with admin: deep evergreen, cream canvas, muted gold, restrained radii. */
:root {
  --forest:#163e30; --forest-dark:#103226; --gold:#af8547;
  --cream:#f7f7f3; --ink:#1c3028; --muted:#61736a;
  --border:#dfe7e1; --surface:#fff; --radius:14px;
  --brand-950:#103226; --brand-900:#163e30; --brand-800:#204d3b;
  --brand-700:#286248; --brand-600:#33735a;
  --text-900:#1c3028; --text-700:#5c6f64; --line:#dfe7e1;
  --shadow-md:0 12px 38px rgba(20,55,42,.06);
}
html { scroll-behavior:smooth; scroll-padding-top:95px; }
body.creator-body,body.viewer-body,body.locked-body {
  background:#f7f8f5; background-image:none; color:var(--ink);
  min-height:100vh; -webkit-font-smoothing:antialiased;
}
body.creator-body::before,body.viewer-body::before,body.locked-body::before { content:none; }
a { text-underline-offset:3px; }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible { outline:3px solid #b59056; outline-offset:3px; }
.topbar,.viewer-top { position:sticky;top:0;z-index:35;max-width:none;height:auto;min-height:84px;
  margin:0;padding:14px clamp(18px,3.5vw,60px);display:flex;align-items:center;justify-content:space-between;gap:22px;
  background:rgba(255,255,255,.97);border-bottom:1px solid var(--border);backdrop-filter:blur(10px);box-shadow:none;
}
.brand.brand-logo,.viewer-top .brand.brand-logo {display:inline-flex;align-items:center;min-width:0;flex:none;text-decoration:none;}
.brand.brand-logo img,.privacy-brand img {width:auto;height:56px;max-width:min(365px,55vw);object-fit:contain;object-position:left center;display:block;}
.topbar-links,.viewer-top-actions {display:flex;align-items:center;gap:6px;flex-wrap:wrap;}
.topbar-link,.viewer-top-link {padding:10px 14px;border:0;border-radius:9px;color:#3d5b4a;background:transparent;min-height:40px;font-size:14px;font-weight:650;text-decoration:none;transition:background .16s,color .16s;}
.topbar-link:hover,.viewer-top-link:hover,.topbar-link.is-current {background:#eaf2ec;color:#154b33;}
.creator-layout {width:100%;max-width:1370px;display:grid;grid-template-columns:minmax(0,1.09fr) minmax(0,.91fr);gap:30px;align-items:start;margin:0 auto;padding:46px clamp(18px,3vw,36px) 30px;}
.creator-panel,.preview-panel {min-width:0;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-md);border-radius:17px;}
.creator-panel {padding:clamp(24px,3vw,42px)}
.hero-badge,.section-kicker {display:inline-block;background:#edf3ee;color:#286048;border:0;border-radius:7px;font-size:11px;font-weight:780;letter-spacing:.1em;line-height:1.45;text-transform:uppercase;padding:7px 10px;}
.creator-title {font:600 clamp(2.3rem,4.5vw,4rem)/1.1 Georgia,serif;color:#17382b;letter-spacing:-.045em;margin:20px 0 13px;}
.creator-intro {color:#5c7065;font-size:16px;line-height:1.72;max-width:64ch;margin:0 0 12px;}
.creator-intro + .creator-intro {margin-top:0;}
.creator-hero-actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px 18px;margin:24px 0 12px;}
.creator-hero-actions>span {color:#6d8074;font-size:13px;max-width:28ch;line-height:1.55;}
.creator-panel form {margin-top:30px;}
.occasion-hero {background:#f6f9f6;border:1px solid #d6e6d9;border-radius:13px;margin-top:25px;box-shadow:none;}
.step {margin:0 0 18px;padding:25px 26px 27px;border-radius:13px;border:1px solid #e3eae5;background:#fff;box-shadow:none;}
.step-head {display:flex;align-items:center;gap:12px;margin:0 0 22px;}
.step-no {display:flex;align-items:center;justify-content:center;flex:none;width:37px;height:37px;border-radius:9px;background:#e8f1ea;color:#20533d;box-shadow:none;font-size:13px;font-weight:850;}
.step h2 {margin:0;font:680 clamp(20px,2vw,24px)/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.025em;color:#153d2d;}
.form-group {min-width:0;} .field-label {font-weight:700;color:#274738;display:block;margin:0 0 9px;font-size:13px;}
.field,.field-textarea,.creator-body select,.creator-body textarea,.creator-body input[type="text"],.creator-body input[type="search"],.creator-body input[type="email"],.creator-body input[type="datetime-local"] {
  width:100%;max-width:100%;min-width:0;border:1px solid #d7e2d9!important;background:#fff!important;border-radius:9px!important;
  padding:12px 13px!important;color:#183c2b;box-shadow:none!important;min-height:46px;font-size:14px;
}
.field:focus,.field-textarea:focus,.creator-body select:focus,.creator-body textarea:focus,.creator-body input:focus {border-color:#3b8861!important;box-shadow:0 0 0 3px rgba(54,124,83,.12)!important;outline:none;}
.field-hint {color:#71857a!important;line-height:1.6;}
.fields-two {grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.theme-choices,.design-choices {gap:10px;}
.theme-option .theme-tile,.design-tile,.sticker-choice span {border-radius:10px!important;border:1px solid #e0e8e2!important;background:#fff!important;box-shadow:none!important;transition:background .15s,border-color .15s;}
.design-tile {padding:12px 10px;gap:8px;} .design-option:hover .design-tile {transform:none;border-color:#a9cbb6!important;}
.design-option input:checked+.design-tile,.theme-option input:checked+.theme-tile,.sticker-choice input:checked+span {border-color:#367d55!important;background:#f2f8f3!important;box-shadow:0 0 0 2px rgba(54,125,85,.12)!important;}
.design-tile strong {font-size:13px;} .design-tile small {font-size:11px;color:#5f7669;}
.design-mini {max-width:150px;min-height:70px;border-radius:7px;}
.v8-options,.v9-compose-panel,.v9-wishes-panel,.premium-toolbar,.file-picker,.v9-unlock {background:#f8faf8!important;border:1px solid #e0e9e2!important;border-radius:11px!important;box-shadow:none!important;}
.v8-options,.v9-compose-panel,.v9-wishes-panel,.premium-toolbar {padding:18px;}
.checkline {border-radius:10px;} .checkline input[type=checkbox],.creator-body input[type=radio] {accent-color:#246a46;}
.btn,.btn-primary,.btn-soft,.btn-ghost,.btn-outline,.btn-black {border-radius:9px!important;min-height:42px;padding:11px 17px!important;font-size:14px;font-weight:740;box-shadow:none!important;transform:none!important;transition:background .16s,border-color .16s,color .16s;}
.btn-primary,.btn-black {background:#13583d!important;color:#fff!important;border:1px solid #13583d!important;}
.btn-primary:hover,.btn-black:hover {background:#104931!important;}
.btn-ghost,.btn-outline {background:#fff!important;border:1px solid #cdded3!important;color:#1b4c34!important;}
.btn-ghost:hover,.btn-outline:hover {background:#f0f6f1!important;border-color:#a8cbb4!important;}
.btn-soft {background:#edf4ed!important;color:#245e42!important;border:1px solid #d4e5d7!important;}
.btn-soft:hover {background:#e3eee5!important;}
.creator-submit {position:relative;bottom:auto;border-radius:12px;padding:20px;background:#f7faf7;border:1px solid #dfe9e2;box-shadow:none;}
.creator-submit .btn-primary {width:100%;padding:14px 18px!important;font-size:15px;}
.privacy-note {font-size:13px;line-height:1.55;}
.preview-panel {position:sticky;top:109px;padding:18px;overflow:hidden;}
.preview-top {color:#3f6652;letter-spacing:.03em;font-size:12px;padding:6px 7px 15px;text-transform:none;}
.preview-top strong {font-weight:750;}
.preview-stage {padding:16px;background:#f4f7f4;border-radius:10px;}
.preview-bottom {padding:14px 8px 3px;color:#667e70;font-size:12px;}
.card-scene {box-shadow:0 15px 34px rgba(15,45,30,.15)!important;border-radius:11px;}
.how-section {max-width:1288px;margin:10px auto 55px;padding:36px clamp(20px,3.5vw,44px);}
.how-heading {max-width:58ch;margin:0 0 25px;} .how-heading h2 {font:600 clamp(29px,3.4vw,43px)/1.13 Georgia,serif;letter-spacing:-.03em;color:#173b2b;margin:15px 0 10px;}
.how-heading p {font-size:15px;color:#5e7567;line-height:1.65;}
.how-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}
.how-grid article {background:#fff;border:1px solid #e1e8e2;border-radius:12px;padding:25px;}
.how-grid article>span {font:750 13px/1 system-ui;color:#af8547;letter-spacing:.1em;}
.how-grid h3 {font-size:18px;color:#19412f;margin:15px 0 9px;line-height:1.3;}
.how-grid p {font-size:14px;color:#647a6d;line-height:1.65;margin:0;}
.public-footer {background:#fff;border-top:1px solid var(--border);padding:24px clamp(18px,5vw,70px);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:24px;color:#5b7064;}
.footer-logo {display:inline-flex;align-items:center;text-decoration:none;flex:none;}.footer-logo img {width:auto;height:48px;max-width:260px;object-fit:contain;display:block;}
.public-footer p {margin:0 0 4px;color:#234b35;font-weight:650;font-size:13px;}.public-footer small {font-size:12px;color:#6f8177;}
.public-footer nav {display:flex;align-items:center;gap:20px;flex-wrap:wrap;} .public-footer nav a,.viewer-footer a {color:#2f6646;font-size:13px;font-weight:650;}
.viewer-top {padding-left:clamp(18px,4vw,64px);padding-right:clamp(18px,4vw,64px);}
.viewer-wrap {max-width:990px;margin:0 auto;padding:48px 20px 70px;}
.viewer-intro {text-align:center;max-width:760px;margin:0 auto 29px;}
.viewer-kicker {display:inline-block;background:#eaf2eb;border:0;padding:8px 12px;border-radius:7px;color:#2a6445;text-transform:uppercase;font-size:11px;letter-spacing:.08em;font-weight:750;margin:0 0 14px;}
.viewer-title {font:600 clamp(31px,4.4vw,53px)/1.13 Georgia,serif;letter-spacing:-.035em;margin:0 auto 14px;color:#153d2d;}
.viewer-byline {color:#61776a;font-size:14px;line-height:1.65;margin:0;}.viewer-byline strong {color:#27583d;}
.viewer-wrap .card-scene {margin-left:auto;margin-right:auto;}
.viewer-top-link,.audio-button {background:#fff;border:1px solid #d6e3da;border-radius:9px;padding:10px 14px;color:#215438;font-size:13px;font-weight:700;}
.action-row {display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin:24px auto 22px;}
.action-row .btn {min-height:43px;}
.guestbook {padding:clamp(22px,3.5vw,38px);border:1px solid #dfe8e0;border-radius:14px;box-shadow:none;background:#fff;margin-top:35px;}
.guestbook .eyebrow {color:#5f7a69;letter-spacing:.07em;}
.guestbook-heading {font:600 clamp(26px,3vw,39px)/1.2 Georgia,serif;color:#153d2d;}
.guestbook-intro {color:#607669;max-width:68ch;line-height:1.65;}
.reaction-item,.qr-panel,.owner-controls,.surprise-box,.countdown-box,.viewer-note {border:1px solid #e2e9e4;border-radius:11px;background:#f8faf8;box-shadow:none;}
.reaction-item {padding:15px 17px;}.reaction-top time {color:#7b8f82;font-size:12px;}
.owner-reply {border-radius:8px;background:#eff5ef;box-shadow:none;}
.qr-panel,.owner-controls {padding:22px;}
.viewer-footer {border-top:1px solid #dce6de;margin-top:38px;padding:26px 0 0;text-align:center;}
.viewer-footer .footer-logo {justify-content:center;margin-bottom:6px;}.viewer-footer a {text-decoration:none;}.viewer-footer p {margin:8px 0;}
.locked-shell {border-radius:16px;background:#fff;box-shadow:var(--shadow-md);}
.locked-shell h1 {font:600 clamp(30px,4.3vw,48px)/1.16 Georgia,serif;letter-spacing:-.03em;}
.locked-shell .eyebrow {border-radius:7px;background:#edf3ed;color:#236340;padding:8px 12px;font-size:11px;}
.privacy-brand {margin:16px auto 24px;}.privacy-brand img {height:66px;max-width:min(375px,80vw);}
.privacy-wrap {max-width:1080px;margin:auto;} .privacy-paper {box-shadow:var(--shadow-md);border-radius:14px!important;}
/* Sitewide interactive affordances */
.card-scene,.preview-stage,.creator-panel,.step,.guestbook {min-width:0;}
.viewer-wrap img,.creator-body img {max-width:100%;} .card-photo {max-width:100%;}
input,textarea,select {max-width:100%;} .field-hint,.reaction-item p,.viewer-note {overflow-wrap:anywhere;}
@media(max-width:1180px) {
 .creator-layout {grid-template-columns:minmax(0,1fr);max-width:790px;padding:28px 20px;}
 .preview-panel {position:relative;top:auto;max-width:none;}
}
@media(max-width:790px) {
 .topbar,.viewer-top {min-height:72px;height:auto;padding:12px 18px;flex-direction:row;align-items:center;flex-wrap:wrap;}
 .brand.brand-logo img {height:46px;max-width:min(305px,73vw);}
 .topbar-links {flex:1;justify-content:flex-end;gap:1px;}
 .topbar-link,.viewer-top-link {padding:9px 11px;font-size:12px;}
 .creator-layout {max-width:790px;padding:18px 14px 28px;display:flex;flex-direction:column;gap:16px;}
 .creator-panel,.preview-panel {width:100%;}
 .how-grid {grid-template-columns:1fr;}.how-grid article {padding:21px;}
 .public-footer {grid-template-columns:1fr;justify-items:start;gap:13px;}
 .viewer-wrap {padding:30px 16px 50px;}
}
@media(max-width:540px) {
 .topbar {align-items:flex-start;gap:8px;}.topbar-links {width:100%;justify-content:flex-start;}
 .viewer-top {align-items:flex-start;gap:8px;}.viewer-top-actions {width:100%;}
 .creator-panel {padding:22px 17px;border-radius:12px;}
 .step {padding:19px 16px;border-radius:10px;}.step-head {gap:10px;margin-bottom:16px;}
 .step-no {width:34px;height:34px;font-size:12px;}.step h2 {font-size:19px;}
 .creator-title {font-size:clamp(31px,9vw,41px);}.creator-intro {font-size:15px;}
 .creator-hero-actions {flex-direction:column;align-items:stretch;}.creator-hero-actions>span {max-width:none;text-align:center;}
 .creator-submit {padding:15px;border-radius:10px;}
 .fields-two {grid-template-columns:1fr;}
 .preview-panel {border-radius:12px;padding:13px;}
 .action-row .btn {flex:1 1 calc(50% - 9px);font-size:12px;padding:10px 8px!important;}
 .viewer-title {font-size:clamp(30px,9vw,40px);}
 .how-section {margin-top:0;padding:26px 19px 38px;}
 .how-heading h2 {font-size:31px;}
 .guestbook {border-radius:11px;padding:20px 15px;}
 .privacy-wrap {padding:14px 12px 40px;}
}
@media(prefers-reduced-motion:reduce) {*,*:before,*:after {scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important;}}
/* v11.2 layout corrections verified against the rendered PHP views. */
.creator-intro {text-align:left;}
button.mobile-preview-toggle {display:none!important;}
@media(max-width:790px) {
  button.mobile-preview-toggle {display:flex!important;justify-content:center;width:100%;margin:0 0 8px;}
  .creator-js .preview-panel:not(.mobile-preview-open) {display:none;}
}
@media(max-width:540px) {
  .topbar {flex-direction:column;align-items:flex-start;gap:8px;}
  .topbar-links {display:flex;width:100%;flex-wrap:nowrap;justify-content:space-between;gap:0;}
  .topbar-link {padding:9px 7px;flex:1;text-align:center;font-size:12px;white-space:nowrap;}
  .creator-intro {text-align:left;}
}
/* Preview header/footer must remain readable in light creator interface. */
.preview-panel .preview-top {background:transparent!important;color:#385a47!important;border-bottom:1px solid #e0e8e3!important;}
.preview-panel .preview-top strong,.preview-panel .preview-top span {color:inherit!important;}
.preview-panel .preview-bottom {background:transparent!important;color:#698071!important;border:0!important;}

/* v11.4 — palette scentralizowana: spokojne kolory marki, bez ingerencji w indywidualne motywy kartek. */
:root{
  --forest:#174734;
  --forest-dark:#102D25;
  --gold:#B18A4A;
  --cream:#F7F2E8;
  --ink:#24372D;
  --muted:#596E62;
  --border:#DEE5DC;
  --surface:#FFFFFF;
  --radius:13px;
  --color-brand:#174734;
  --color-brand-hover:#246048;
  --color-paper:#F7F5EF;
  --color-paper-strong:#EFE9DB;
  --color-accent:#AA8142;
  --color-focus:#99722F;
}
body.creator-body,body.viewer-body,body.locked-body{
  background:#F7F5EF!important;
  background-image:linear-gradient(180deg,#F7F5EF 0%,#F4F6F1 100%)!important;
  color:var(--ink)!important;
}
body.creator-body .topbar,body.viewer-body .viewer-top{
  background:rgba(255,255,255,.98)!important;
  border-bottom:1px solid #E4E8E0!important;
  color:var(--ink)!important;
}
.brand.brand-logo img{filter:none}
body.creator-body .topbar-link,body.viewer-body .viewer-top-link{
  color:#365747!important;
  font-weight:650;
}
body.creator-body .topbar-link:hover,body.creator-body .topbar-link.is-current,
body.viewer-body .viewer-top-link:hover{
  color:var(--forest-dark)!important;
  background:#EFF4EE!important;
}
.creator-panel,.preview-panel,.guestbook,.qr-panel,.owner-controls,.surprise-box,
.countdown-box,.viewer-note,.locked-shell,.privacy-paper{
  background:#FFFFFF!important;
  border-color:#E1E7DE!important;
  box-shadow:0 10px 30px rgba(27,55,40,.045)!important;
}
.creator-title,.viewer-title,.how-heading h2,.guestbook-heading,.locked-shell h1,
.privacy-paper h1,.privacy-paper h2{
  color:#153D2C!important;
}
.creator-intro,.viewer-byline,.how-heading p,.guestbook-intro,
.public-footer small,.field-hint,.viewer-note{
  color:#5B6F63!important;
}
.hero-badge,.section-kicker,.viewer-kicker,.locked-shell .eyebrow{
  color:#285E45!important;
  background:#EBF2EC!important;
  border:1px solid #D9E7DB!important;
}
.creator-body .step,.how-grid article{
  background:#FFFFFF!important;
  border-color:#E4E9E2!important;
}
.creator-body .step-no{
  background:#E7F0E9!important;
  color:#215740!important;
}
.creator-body .field-label{color:#294735!important}
.creator-body .field,.creator-body .field-textarea,.creator-body :is(select,textarea,input[type="email"],input[type="text"],input[type="search"],input[type="datetime-local"]),
.viewer-body .field,.viewer-body .field-textarea{
  background:#FFFFFF!important;
  border-color:#CDDCD1!important;
  color:#213B2C!important;
}
.creator-body :is(.field,.field-textarea,select,textarea,input):focus,
.viewer-body :is(.field,.field-textarea,select,textarea,input):focus{
  border-color:#3C7B56!important;
  box-shadow:0 0 0 3px rgba(45,111,72,.15)!important;
}
.creator-body :is(.btn-primary,.btn-black),
.viewer-body :is(.btn-primary,.btn-black){
  color:#FFFFFF!important;
  background:#174734!important;
  border-color:#174734!important;
}
.creator-body :is(.btn-primary,.btn-black):hover,
.viewer-body :is(.btn-primary,.btn-black):hover{background:#235D45!important;border-color:#235D45!important}
.creator-body .btn-ghost,.viewer-body .btn-ghost,.locked-body .btn-ghost{
  background:#fff!important;
  border-color:#D5E2D8!important;
  color:#245640!important;
}
.creator-body .btn-ghost:hover,.viewer-body .btn-ghost:hover,.locked-body .btn-ghost:hover{
  background:#F2F7F2!important;
  border-color:#A9C8B2!important;
}
.creator-body .btn-soft,.viewer-body .btn-soft{
  background:#ECF3EB!important;
  border-color:#D8E7D9!important;
  color:#215740!important;
}
.creator-submit,.v8-options,.v9-compose-panel,.v9-wishes-panel,.premium-toolbar,.file-picker,.v9-unlock{
  background:#F8FAF7!important;
  border-color:#E0E9DF!important;
}
.creator-body :is(.theme-option input:checked+.theme-tile,.design-option input:checked+.design-tile,.sticker-choice input:checked+span){
  border-color:#3E865C!important;
  background:#F1F7F0!important;
  box-shadow:0 0 0 2px rgba(62,134,92,.13)!important;
}
.creator-body .occasion-hero{
  border-color:#E3D8C0!important;
  background:#FCF9F1!important;
}
/* Podgląd to neutralna galeria, palety samych kartek pozostają nienaruszone. */
.preview-panel .preview-stage{background:#F2F4EE!important}
.preview-panel .preview-top{color:#365747!important}
.preview-panel .preview-bottom{color:#5D7564!important}
.how-section{border-top:1px solid #E4E8DE}
.how-grid article{box-shadow:0 6px 22px rgba(21,55,40,.035)}
.how-grid h3{color:#194F39!important}
.public-footer{background:#FFFFFF!important;border-top-color:#E4E9E1!important}
.public-footer :is(p,a),.viewer-footer a{color:#23533D!important}
.viewer-body .viewer-intro{color:#24372D}
.viewer-body .viewer-byline strong{color:#1C513B}
.viewer-body .guestbook{background:#fff!important}
.viewer-body .reaction-item,.viewer-body .owner-reply,.viewer-body .qr-panel{
  background:#F7F9F6!important;
  border-color:#E2EAE3!important;
}
.viewer-body .audio-button{color:#245640!important;background:#fff!important;border-color:#D5E2D8!important}
.privacy-paper :is(p,ul,li){color:#384D3E}
.privacy-paper a{color:#1F6547!important}
:focus-visible{outline:3px solid #A37A37!important;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
