.generator-page{background:#f4f1ec}.generator-topbar{background:rgba(251,250,247,.96)}.nav-current{color:var(--accent)!important;font-weight:800}.generator-home{text-decoration:none;display:inline-flex;align-items:center}.generator-hero{margin:18px clamp(12px,3vw,46px) 0;padding:54px clamp(24px,5vw,70px);border-radius:28px;background:linear-gradient(120deg,#f1ded1 0%,#fbf6ef 48%,#dfe8df 100%);display:flex;justify-content:space-between;align-items:center;gap:32px;overflow:hidden;position:relative}.generator-hero:after{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-70px;top:-150px;border:46px solid rgba(255,255,255,.34)}.generator-hero>div{position:relative;z-index:1}.generator-hero h1{font-size:clamp(40px,5.8vw,72px);max-width:800px;margin:10px 0 18px;line-height:1.02}.generator-hero h1 em{color:var(--accent);font-weight:500}.generator-hero p{max-width:760px;line-height:1.7;color:#59616b;font-size:17px;margin:0}.generator-hero-badge{min-width:150px;aspect-ratio:1;border-radius:50%;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.95);box-shadow:0 20px 50px rgba(47,42,36,.08);display:grid;place-content:center;text-align:center}.generator-hero-badge strong{font:700 48px Georgia,serif;color:var(--deep)}.generator-hero-badge span{font-size:12px;color:var(--muted)}
.generator-shell{display:grid;grid-template-columns:minmax(330px,440px) minmax(0,1fr);gap:28px;padding:32px clamp(12px,3vw,46px) 56px;align-items:start}.generator-controls{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 12px 34px rgba(36,39,40,.05);overflow:hidden}.control-section{padding:24px;border-bottom:1px solid var(--line)}.control-section:last-child{border-bottom:0}.control-heading{display:flex;gap:12px;align-items:center;margin-bottom:20px}.control-heading>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#f2e7de;color:var(--accent);font-size:11px;font-weight:800}.control-heading div{display:grid;gap:2px}.control-heading strong{font-size:16px}.control-heading small{color:var(--muted)}.field-label{display:flex;justify-content:space-between;font-size:12px;font-weight:800;color:#5e6669;margin:15px 0 7px}.field-control{width:100%;border:1px solid #ddd7ce;background:#fbfaf8;color:var(--ink);border-radius:12px;padding:12px 13px;font:inherit;outline:none}.field-control:focus{border-color:#b85d47;box-shadow:0 0 0 3px rgba(184,93,71,.1)}.card-textarea{min-height:132px;resize:vertical;line-height:1.55}.counter-row{display:flex;justify-content:space-between;gap:12px;color:#909397;font-size:10px;margin-top:6px}.inline-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 4px}.mini-btn{border:1px solid #d7d0c6;background:#fff8f2;border-radius:999px;padding:8px 11px;color:var(--accent);font-size:11px;font-weight:800;cursor:pointer}.mini-link{font-size:11px;color:var(--muted)}
.template-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}.template-choice{background:#fff;border:1px solid #ddd7ce;border-radius:13px;padding:7px;text-align:left;cursor:pointer}.template-choice.active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(184,93,71,.12)}.template-choice span{display:block;font-size:10px;font-weight:700;padding:6px 2px 2px}.template-swatch{display:block;height:52px;border-radius:8px;position:relative;overflow:hidden}.t-celebration{background:linear-gradient(140deg,#ffe3bf,#f09a84 55%,#6f8b83)}.t-romance{background:linear-gradient(140deg,#f7dedf,#b85d71)}.t-wedding{background:linear-gradient(140deg,#f8f4ed,#d7bd88)}.t-christmas{background:linear-gradient(140deg,#173d35,#315d50 60%,#e4c996)}.t-botanical{background:linear-gradient(140deg,#e9efe6,#86a383)}.t-minimal{background:linear-gradient(140deg,#f5f2ed,#ddd8cf)}.t-pastel{background:linear-gradient(140deg,#fdf1f6,#d7e9fb 55%,#f6ecd2)}.t-baby{background:linear-gradient(140deg,#ecf5ff,#c7dff7 55%,#fce1e8)}.t-luxury{background:linear-gradient(140deg,#1f2530,#373f4c 55%,#c7a86d)}.t-winter{background:linear-gradient(140deg,#eef7ff,#cadcf0 55%,#8aa8c7)}.segmented{display:grid;grid-template-columns:repeat(2,1fr);border:1px solid #ddd7ce;border-radius:12px;padding:3px;background:#f8f6f2}.segmented button{border:0;background:transparent;border-radius:9px;padding:9px;cursor:pointer;font-weight:700;color:#72787b}.segmented button.active{background:#fff;color:var(--ink);box-shadow:0 2px 8px rgba(30,30,30,.08)}#alignControl{grid-template-columns:repeat(3,1fr)}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.range-control{width:100%;accent-color:var(--accent);margin-top:9px}.upload-box{margin-top:16px;border:1px dashed #cfc6ba;background:#faf8f4;border-radius:14px;padding:14px;display:flex;gap:11px;align-items:center;cursor:pointer}.upload-box>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--line);font-size:20px;color:var(--accent)}.upload-box div{display:grid;gap:2px}.upload-box strong{font-size:12px}.upload-box small{font-size:10px;color:var(--muted)}.upload-box input{display:none}.license-note{font-size:10px;line-height:1.45;color:#8b8f90;margin:8px 2px}.text-action{border:0;background:transparent;padding:0;color:var(--accent);font-size:11px;font-weight:800;cursor:pointer}
.preview-panel{position:sticky;top:88px;min-width:0}.preview-head{display:flex;align-items:end;justify-content:space-between;margin:0 4px 14px}.preview-head h2{font-size:28px;margin:5px 0 0}.preview-status{font-size:11px;color:#62716a;background:#e6eee8;border-radius:999px;padding:7px 11px}.canvas-stage{min-height:620px;border:1px solid var(--line);border-radius:24px;background:radial-gradient(circle at 1px 1px,#d9d6d0 1px,transparent 0);background-size:20px 20px;display:grid;place-items:center;padding:34px;overflow:hidden}.canvas-stage canvas{display:block;max-width:100%;max-height:72vh;width:auto;height:auto;background:#fff;box-shadow:0 24px 60px rgba(34,31,28,.18);border-radius:4px}.download-bar{display:grid;grid-template-columns:1.2fr 1fr 1fr .8fr;gap:10px;margin-top:13px}.download-btn{border:1px solid #d9d3cb;background:#fff;border-radius:14px;padding:11px 13px;display:flex;align-items:center;gap:10px;cursor:pointer;text-align:left}.download-btn>span{width:34px;height:34px;border-radius:9px;background:#f4f1ec;display:grid;place-items:center;font-size:11px;font-weight:900}.download-btn div{display:grid}.download-btn strong{font-size:12px}.download-btn small{font-size:9px;color:var(--muted)}.primary-download{background:var(--deep);border-color:var(--deep);color:#fff}.primary-download>span{background:rgba(255,255,255,.12)}.primary-download small{color:#cbd7d1}.generator-seo{background:#fff;border-top:1px solid var(--line);padding:62px clamp(24px,8vw,130px)}.generator-seo h2{font-size:clamp(32px,4vw,48px);max-width:780px;margin:8px 0 24px}.generator-seo-cols{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:1000px}.generator-seo p{color:#5c6468;line-height:1.75;margin:0}.generator-page footer{content-visibility:visible}
@media(max-width:1050px){.generator-shell{grid-template-columns:1fr}.generator-controls{display:grid;grid-template-columns:repeat(3,1fr)}.control-section{border-bottom:0;border-right:1px solid var(--line)}.control-section:last-child{border-right:0}.preview-panel{position:static}.canvas-stage{min-height:520px}}
@media(max-width:780px){.generator-hero{margin:10px;align-items:flex-start}.generator-hero-badge{display:none}.generator-shell{padding:18px 10px 40px}.generator-controls{display:block}.control-section{border-right:0;border-bottom:1px solid var(--line)}.template-grid{grid-template-columns:repeat(4,1fr)}.canvas-stage{padding:14px;min-height:430px}.canvas-stage canvas{max-height:none;width:100%}.download-bar{grid-template-columns:1fr 1fr}.download-btn:last-child{grid-column:1/-1}.generator-seo{padding:45px 20px}.generator-seo-cols{grid-template-columns:1fr}.generator-page .ghost-btn{font-size:12px}.generator-page .ghost-btn span{font-size:inherit}}
@media(max-width:480px){.template-grid{grid-template-columns:repeat(2,1fr)}.two-fields{grid-template-columns:1fr}.inline-actions{align-items:flex-start;flex-direction:column}.download-bar{grid-template-columns:1fr}.download-btn:last-child{grid-column:auto}.generator-hero{padding:38px 22px}.generator-hero h1{font-size:39px}}

/* Kategorie jako tła generatora */
.background-section{padding-bottom:18px}.background-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;max-height:470px;overflow:auto;padding:2px 3px 4px 1px;scrollbar-width:thin}.background-choice{border:1px solid #ddd7ce;background:#fff;border-radius:12px;padding:5px;cursor:pointer;text-align:left;min-width:0}.background-choice i{display:block;width:100%;aspect-ratio:1.05/1;background-size:cover;background-position:center;border-radius:8px}.background-choice span{display:block;font-size:9px;font-weight:800;line-height:1.2;padding:6px 3px 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.background-choice.active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(184,93,71,.13);background:#fff9f5}.background-choice:focus-visible{outline:3px solid rgba(184,93,71,.25);outline-offset:2px}.download-bar{grid-template-columns:1.2fr 1fr 1fr .8fr}.generator-controls .background-section+.control-section{border-top:0}@media(max-width:1050px){.generator-controls{display:block}.control-section{border-right:0;border-bottom:1px solid var(--line)}.background-grid{grid-template-columns:repeat(6,minmax(0,1fr));max-height:350px}}@media(max-width:780px){.background-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:390px}.background-choice span{font-size:9px}}@media(max-width:480px){.background-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:420px}}

.share-modal[hidden]{display:none}.share-modal{position:fixed;inset:0;z-index:9999}.share-modal-backdrop{position:absolute;inset:0;background:rgba(18,22,24,.48);backdrop-filter:blur(3px)}.share-sheet{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(520px,calc(100% - 28px));background:#fff;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.24);padding:22px}.share-sheet-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.share-sheet-head>div{display:grid;gap:3px}.share-sheet-head strong{font-size:20px}.share-sheet-head small{color:var(--muted)}.share-close{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:22px;cursor:pointer}.share-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.share-option{min-height:92px;border:1px solid var(--line);background:#fbfaf7;border-radius:16px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-decoration:none;color:var(--ink);cursor:pointer;font:inherit}.share-option:hover{border-color:#cbbfb3;background:#fff}.share-option>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#f0ebe5;font-weight:900;color:var(--accent)}.share-option strong{font-size:12px}@media(max-width:520px){.share-sheet{left:0;right:0;bottom:0;top:auto;transform:none;width:auto;border-radius:22px 22px 0 0;padding-bottom:max(22px,env(safe-area-inset-bottom))}.share-options{grid-template-columns:repeat(2,1fr)}}

.share-note{margin:12px 4px 0;color:#777;font-size:11px;line-height:1.5}.share-sheet-head small{max-width:440px;line-height:1.35}

/* Format i rozmiary social media */
.layout-segmented{grid-template-columns:repeat(3,1fr)}.size-hint{margin:8px 2px 0;color:#85898b;font-size:10px;line-height:1.45}#sizePreset{margin-bottom:0}@media(max-width:520px){.layout-segmented{grid-template-columns:1fr}.layout-segmented button{padding:10px 8px}}
