:root{--bg:#f7f8f6;--paper:#ffffff;--text:#1c1f1c;--muted:#5f675f;--line:#dfe4de;--accent:#2f6b4f;--accent-dark:#245540;--danger:#9b3b32;--radius:12px;--shadow:0 8px 30px rgba(28,40,32,0.06)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Segoe UI,Noto Sans,Arial,sans-serif;line-height:1.45}body{min-height:100dvh}button,input,select,textarea{font:inherit}a{color:var(--accent)}.shell{width:min(720px,calc(100% - 32px));margin:0 auto;padding:28px 0 80px}h1{font-size:1.6rem;letter-spacing:-.03em;margin:0 0 8px}.lead{margin:0 0 24px;color:var(--muted)}label{display:block;font-size:.92rem;font-weight:600;margin:16px 0 8px}input,select,textarea{width:100%;border:1px solid var(--line);background:var(--paper);border-radius:10px;padding:14px;color:var(--text)}textarea{min-height:110px;resize:vertical}.drop{border:1.5px dashed #b7c5bb;background:#eef4f0;border-radius:14px;min-height:140px;display:flex;align-items:center;justify-content:center;text-align:center;padding:20px;cursor:pointer;color:var(--accent-dark);font-weight:600}.drop input{display:none}.file-ok{margin-top:10px;color:var(--accent-dark)}.actions{display:flex;gap:10px;margin-top:28px;flex-wrap:wrap}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:var(--accent);color:white;border-radius:12px;padding:14px 18px;font-weight:700;cursor:pointer;flex:1 1;min-width:140px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.secondary{background:white;color:var(--text);border:1px solid var(--line)}.btn.ghost{background:transparent;color:var(--accent-dark);border:1px solid #c9d7cf}.error{color:var(--danger);margin-top:12px}.colors,.styles{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px}.choice{border:1px solid var(--line);background:white;border-radius:12px;padding:12px;text-align:left;cursor:pointer}.choice b{display:block;margin-bottom:4px}.choice span{color:var(--muted);font-size:.82rem}.choice.active{border-color:var(--accent);box-shadow:0 0 0 2px rgba(47,107,79,.15)}.swatch{height:44px;border:1px solid var(--line);border-radius:10px;cursor:pointer;color:white;font-weight:700;font-size:.82rem}.swatch.active{outline:2px solid var(--text);outline-offset:2px}.preview-wrap{margin-top:20px;background:#cfcfc8;border-radius:12px;padding:24px 16px;overflow:auto;max-height:min(72dvh,960px)}.preview-wrap .price-page{display:block}.socials{display:flex;flex-direction:column;gap:10px;margin-top:24px}.notice{background:white;border-radius:14px;padding:18px;border:1px solid var(--line)}.modal{position:fixed;inset:0;background:rgba(20,24,20,.55);display:flex;align-items:center;justify-content:center;padding:16px;z-index:20}.modal-card{background:#cfcfc8;width:min(980px,100%);max-height:90dvh;overflow:auto;border-radius:16px;padding:20px 12px}@media (max-width:719px){.shell{width:min(720px,calc(100% - 20px));padding:20px 0 64px}.preview-wrap{padding:12px 8px;max-height:min(68dvh,820px)}.btn{min-width:0}}@media (min-width:720px){.styles{grid-template-columns:repeat(3,1fr)}.colors{grid-template-columns:repeat(4,1fr)}h1{font-size:2rem}}.price-page{--accent:#5f8069;--accent-dark:#365c43;--page-bg:#f6f8f3;--text:#151515;--row-line:#aaaaaa;--secondary-text:#6a6a6a;--cell-pad-x:10px;--cell-pad-y:8px;--body-size:16px;--header-size:12px;--title-size:42px;--page-width:893px;--page-min-height:1263px;width:var(--page-width);min-height:var(--page-min-height);padding:48px 46px 56px;box-sizing:border-box;margin:0 auto;background:var(--page-bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;box-shadow:0 12px 36px rgba(21,21,21,.08)}.price-page--compact{width:100%;min-width:280px;min-height:0;padding:24px 20px 28px}.price-page h2,.price-page p{margin:0}.price-header{padding-bottom:12px;border-bottom:4px solid var(--accent)}.price-header h2{font-size:var(--title-size);font-weight:700;line-height:1.12;letter-spacing:-.3px;color:var(--text)}.price-page--compact .price-header h2{font-size:clamp(20px,4.8vw,28px);letter-spacing:-.2px}.price-info{margin:14px 0 0;padding-bottom:26px;font-size:15px;line-height:1.5}.price-info--both{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:28px;gap:28px}.price-info--contacts,.price-info--terms{display:block}.price-info__label{font-size:10px;font-weight:600;letter-spacing:1.15px;text-transform:uppercase;color:var(--accent-dark);margin-bottom:5px}.price-info__text{color:#151515;white-space:pre-wrap;overflow-wrap:break-word;word-break:normal}.price-info--both .price-info__terms,.price-info--terms .price-info__label,.price-info--terms .price-info__terms{text-align:right}.price-table-wrap{overflow:visible}.price-page--no-info .price-table-wrap{margin-top:14px}.price-table{width:100%;table-layout:fixed;border-collapse:collapse}.price-table td{padding:var(--cell-pad-y) var(--cell-pad-x);vertical-align:middle;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:none;hyphens:none;white-space:pre-wrap;border-bottom:1px solid color-mix(in srgb,var(--row-line) 26%,var(--page-bg));font-size:var(--body-size);line-height:1.3}.price-table td:not(:last-child){padding-right:calc(var(--cell-pad-x) + var(--col-gap, 14px))}.price-table__header td{font-size:var(--header-size);font-weight:600;color:var(--text);border-top:1px solid color-mix(in srgb,var(--text) 28%,var(--page-bg));border-bottom:1.5px solid var(--text);padding-top:10px;padding-bottom:10px;line-height:1.3;overflow-wrap:normal;word-break:normal;overflow:visible}.price-table__header+.price-table__data td{padding-top:calc(var(--cell-pad-y) + 5px)}.price-table__data td{min-height:36px;height:auto}.price-table td.is-center{text-align:center}.price-table td.is-right{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.price-table__section td,.price-table__title td{font-weight:700;line-height:1.25;padding-top:14px;border-bottom:1px solid var(--row-line)}.price-table__note td,.price-table__section.is-long td,.price-table__title.is-long td{font-size:calc(var(--body-size) * .85);font-weight:400;color:var(--secondary-text)}.price-table__spacer td{padding:4px var(--cell-pad-x);border-bottom:0}@media (max-width:720px){.price-info--both{grid-template-columns:1fr;gap:16px}.price-info--both .price-info__terms,.price-info--terms .price-info__label,.price-info--terms .price-info__terms{text-align:left}}