:root{color:#111827;background-color:#f3f4f6;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}body{margin:0}#root{min-height:100vh}.globalNotificationBanner{z-index:200;width:100%;max-width:100%;position:sticky;top:0}.globalNotificationBannerInner{border:1px solid #0000;border-top:none;border-radius:0 0 14px 14px;justify-content:space-between;align-items:flex-start;gap:.75rem;width:100%;max-width:100%;margin:0;padding:.85rem clamp(.75rem,4vw,1.35rem);display:flex;box-shadow:0 4px 12px #0f172a0f}@media (width>=640px){.globalNotificationBannerInner{border-radius:0 0 16px 16px;padding:.95rem 1.35rem}}.globalNotificationBannerMessage{word-break:break-word;flex:1;min-width:0;margin:0;font-size:clamp(.88rem,2.8vw,.95rem);line-height:1.5}.globalNotificationBannerClose{cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-.4rem -.15rem -.4rem 0;padding:0;font-size:1.5rem;line-height:1;transition:opacity .15s,background .15s;display:inline-flex}.globalNotificationBannerClose:hover{opacity:1}.globalNotificationBannerClose:focus-visible{outline-offset:2px;outline:2px solid}.globalNotificationBanner--info .globalNotificationBannerInner{color:#1e3a8a;background:#eff6ff;border-color:#bfdbfe}.globalNotificationBanner--info .globalNotificationBannerClose:hover{background:#2563eb1f}.globalNotificationBanner--success .globalNotificationBannerInner{color:#14532d;background:#ecfdf5;border-color:#a7f3d0}.globalNotificationBanner--success .globalNotificationBannerClose:hover{background:#16a34a26}.globalNotificationBanner--warning .globalNotificationBannerInner{color:#78350f;background:#fffbeb;border-color:#fde68a}.globalNotificationBanner--warning .globalNotificationBannerClose:hover{background:#d9770626}.globalNotificationBanner--error .globalNotificationBannerInner{color:#7f1d1d;background:#fef2f2;border-color:#fecaca}.globalNotificationBanner--error .globalNotificationBannerClose:hover{background:#dc26261f}.page{justify-content:center;align-items:flex-start;min-height:100vh;padding:1rem;display:flex}.container{width:100%;max-width:720px}.containerNarrow{max-width:420px}.pageAuthGate{align-items:center;padding-top:clamp(1.5rem,4vh,3rem)}.authGateTitle{text-align:center;margin-bottom:.35rem}.authGateDesc{text-align:center;margin-bottom:1rem}.title{margin:0 0 .5rem;font-size:1.65rem}.description{color:#4b5563;margin:0 0 1rem;font-size:.95rem}.card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;margin-bottom:1rem;padding:1rem;box-shadow:0 6px 18px #1118270f}.label{margin-bottom:.5rem;font-weight:600;display:block}.textarea{resize:vertical;width:100%;min-height:140px;font:inherit;border:1px solid #d1d5db;border-radius:8px;margin-bottom:.8rem;padding:.75rem}.textareaTall{min-height:220px}.select{width:100%;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;margin-bottom:.8rem;padding:.65rem .75rem}.checkboxRow{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:.65rem;min-height:44px;margin-bottom:.9rem;padding:.35rem 0;display:flex}.checkboxInput{accent-color:#2563eb;flex-shrink:0;width:1.15rem;height:1.15rem;margin-top:.15rem}.checkboxLabel{color:#374151;font-size:.95rem;line-height:1.35}.wordRangeFieldset{border:none;margin:0 0 .9rem;padding:0}.wordRangeLegend{margin-bottom:.5rem}.wordRangeRow{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.wordRangeField{min-width:0}.wordRangeLabel{color:#374151;margin-bottom:.35rem;font-size:.88rem;font-weight:600;display:block}.numberInput{width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:.55rem .65rem;font-size:1rem}.numberInput:disabled{opacity:.7}@media (width<=380px){.wordRangeRow{grid-template-columns:1fr}}.button{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;width:100%;padding:.75rem 1rem;font-weight:600}.sampleButton{background:#334155;margin-bottom:.8rem}.sampleOptions{background:#f8fafc;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:.8rem;padding:.75rem}.sampleOptionButton{background:#475569;margin-bottom:.4rem}.samplePreviewLink{color:#1d4ed8;margin:0 0 .75rem;font-size:.9rem;text-decoration:none;display:block}.samplePreviewLink:last-child{margin-bottom:0}.installButton{background:#1d4ed8;margin-bottom:1rem}.button:disabled{opacity:.7;cursor:not-allowed}.secondaryButton{text-align:center;background:#0f766e;margin-top:.9rem;text-decoration:none;display:inline-block}.subTitle{margin:0 0 .5rem;font-size:1.1rem}.resultCardTitle{margin-bottom:.75rem}.answerEditBlock{flex-direction:column;gap:.65rem;margin:0 0 1.25rem;display:flex}.answerEditLabel{color:#4b5563;margin:0;font-size:.92rem;line-height:1.45}.answerTextarea{width:100%;max-width:100%;min-height:clamp(12rem,38vh,22rem);font:inherit;color:#1f2937;resize:vertical;-webkit-tap-highlight-color:transparent;background:#fafafa;border:1px solid #d1d5db;border-radius:8px;margin:0;padding:.85rem 1rem;font-size:1rem;line-height:1.55}.answerTextarea:focus{outline-offset:0;background:#fff;border-color:#2563eb;outline:2px solid #93c5fd}@media (width>=640px){.answerTextarea{min-height:clamp(14rem,32vh,26rem);padding:1rem 1.1rem}}.errorMessage{color:#b91c1c;margin:0 0 1rem;font-size:.92rem}.authCard{margin-bottom:1rem}.authTitle{margin:0 0 .35rem;font-size:1.15rem;font-weight:600}.authHint{color:#6b7280;margin:0 0 .85rem;font-size:.88rem;line-height:1.4}.authLocationHint{color:#9ca3af;margin:-.35rem 0 .85rem;font-size:.8rem;line-height:1.35}.authOptional{color:#6b7280;font-size:.85rem;font-weight:400}.authInput{width:100%;min-height:44px;font:inherit;background:#fff;border:1px solid #d1d5db;border-radius:8px;margin-bottom:.75rem;padding:.55rem .65rem;font-size:1rem}.authInput:focus{outline-offset:0;border-color:#2563eb;outline:2px solid #93c5fd}.authError{margin-top:0}.authStatus{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.authStatusText{color:#374151;margin:0;font-size:.95rem}.authUserId{color:#6b7280;font-size:.9rem}.buttonSecondary{background:#4b5563;width:auto;min-width:7rem;font-size:.95rem}.sessionBootstrap{text-align:center;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem 1rem;display:flex}.sessionSpinner{border:3px solid #e5e7eb;border-top-color:#2563eb;border-radius:50%;width:2.25rem;height:2.25rem;animation:.7s linear infinite sessionSpin}@keyframes sessionSpin{to{transform:rotate(360deg)}}.sessionBootstrapTitle{color:#111827;margin:0;font-size:1.05rem;font-weight:600}.sessionBootstrapHint{color:#6b7280;margin:0;font-size:.88rem}.backendOfflineCard .description{text-align:left}.apiUrlHint{word-break:break-all;background:#f3f4f6;border-radius:4px;padding:.15rem .35rem;font-size:.85rem}.pdfDownloadBlock{border-top:1px solid #e5e7eb;margin-top:.75rem;padding-top:.75rem}.pdfPreviewSection .pdfDownloadBlock{border-top:none;margin-top:1rem;padding-top:1rem}.paymentHint{color:#4b5563;margin:0 0 .75rem;font-size:.9rem;line-height:1.45}.pdfPayButton{width:100%;min-height:48px;font-size:1rem}.paymentError{margin-top:.75rem;margin-bottom:0}.pdfPreviewSection{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.pdfPreviewSectionTitle{color:#374151;margin:0;font-size:1rem;font-weight:600}.pdfPreviewHeadingRow{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem 1rem;margin-bottom:.65rem;display:flex}.pdfPreviewStatus{color:#6b7280;margin:0;font-size:.85rem}.pdfPreviewError{margin:0 0 .65rem;font-size:.88rem}.pdfPreviewShell{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;width:100%;max-width:100%;min-height:min(70vh,520px);position:relative;overflow:hidden}.pdfPreviewShell--locked{-webkit-user-select:none;user-select:none}.pdfPreviewShell--busy{opacity:.88;transition:opacity .2s}.pdfPreviewFrameWrap{position:absolute;inset:0;overflow:hidden}.pdfPreviewFrameWrap--locked{-webkit-filter:blur(3px)}.pdfPreviewShell--locked .pdfPreviewIframe{pointer-events:none}.pdfPreviewIframe{border:none;width:100%;height:100%;min-height:min(70vh,520px);display:block}.pdfPreviewOverlay{z-index:2;border-radius:inherit;background:#0f172a38;justify-content:center;align-items:center;padding:1rem;display:flex;position:absolute;inset:0}.pdfPreviewWatermarkRepeat{pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Ctext x='50%25' y='50%25' dominant-baseline='middle' text-anchor='middle' fill='rgba(15,23,42,0.1)' font-size='14' font-family='system-ui,sans-serif' transform='rotate(-42 110 110)'%3EPREVIEW%3C/text%3E%3C/svg%3E"),repeating-linear-gradient(-32deg,#0000,#0000 48px,#0f172a0a 48px 49px);background-size:220px 220px,auto;position:absolute;inset:0}.pdfPreviewOverlayCenter{z-index:1;text-align:center;pointer-events:none;max-width:20rem;position:relative}.pdfPreviewOverlayTitle{color:#f8fafc;text-shadow:0 1px 2px #00000073;background:#0f172a8c;border-radius:8px;margin:0;padding:.65rem 1rem;font-size:1rem;font-weight:600;line-height:1.35}.paymentHintSuccess{color:#0f766e;font-weight:600}.paymentHintFree{color:#4b5563}.page.pageWithFooter{flex-direction:column;align-items:stretch;width:100%;max-width:100%;padding:0}.pageWithFooterMain{flex:1;justify-content:center;width:100%;min-width:0;padding:1rem;display:flex}.siteFooter{background:#f9fafb;border-top:1px solid #e5e7eb;width:100%;margin-top:auto;padding:1rem}.siteFooterInner{color:#4b5563;flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem 1rem;max-width:720px;margin:0 auto;font-size:.92rem;display:flex}.siteFooterSep{color:#9ca3af;-webkit-user-select:none;user-select:none}.siteFooterLink,.siteFooterLinkButton{font:inherit;font-size:inherit;color:#1d4ed8;text-underline-offset:.15em;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;align-items:center;min-height:44px;padding:.35rem .25rem;text-decoration:underline;text-decoration-thickness:1px;display:inline-flex}.siteFooterLink:hover,.siteFooterLinkButton:hover{color:#1e40af}.siteFooterLink:focus-visible,.siteFooterLinkButton:focus-visible{outline-offset:2px;border-radius:4px;outline:2px solid #2563eb}@media (width>=480px){.siteFooterInner{justify-content:center;gap:.75rem 1.25rem}}.feedbackModalBackdrop{z-index:400;overscroll-behavior:contain;background:#0f172a7a;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.feedbackModalPanel{border-radius:16px 16px 0 0;width:100%;max-width:520px;max-height:min(92vh,640px);margin:0;overflow-y:auto;box-shadow:0 -8px 32px #0f172a2e}@media (width>=640px){.feedbackModalBackdrop{align-items:center;padding:1rem}.feedbackModalPanel{border-radius:12px;box-shadow:0 12px 40px #0f172a24}}.feedbackModalHeader{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.feedbackModalTitle{color:#111827;margin:0;font-size:1.15rem;font-weight:600}.feedbackModalClose{cursor:pointer;color:#4b5563;background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:-.35rem -.35rem 0 0;padding:0;font-size:1.5rem;line-height:1;display:inline-flex}.feedbackModalClose:hover{background:#f3f4f6}.feedbackModalClose:focus-visible{outline-offset:0;outline:2px solid #2563eb}.feedbackModalForm{flex-direction:column;gap:.25rem;display:flex}.feedbackModalTextarea{min-height:140px;margin-bottom:.5rem}.feedbackModalSelect{margin-bottom:.5rem}.feedbackModalError{margin:.35rem 0 0}.feedbackModalSuccess{color:#047857;margin:0;padding:.5rem 0;font-size:.95rem;line-height:1.45}.feedbackModalActions{flex-direction:column;gap:.5rem;margin-top:.75rem;display:flex}@media (width>=480px){.feedbackModalActions{flex-direction:row;justify-content:flex-end}.feedbackModalCancel{width:auto;min-width:6.5rem}.feedbackModalSubmit{flex:0 auto;width:auto;min-width:8rem}}.feedbackModalSubmit,.feedbackModalCancel{min-height:48px}@media (width>=640px){.page{padding:2rem 1rem}.title{font-size:2rem}}.qrGeneratorPage{background-color:#f3f4f6;width:100%;max-width:100%;min-height:100vh;padding:clamp(1rem,4vw,1.5rem)}.qrGeneratorPageHeader{max-width:28rem;margin:0 auto 1.25rem}.qrGeneratorPageBack{color:#374151;margin-bottom:.75rem;font-size:.9rem;text-decoration:none;display:inline-block}.qrGeneratorPageBack:hover{text-decoration:underline}.qrGeneratorPageTitle{color:#111827;margin:0;font-size:clamp(1.25rem,4vw,1.5rem);font-weight:600}.qrGeneratorPageMain{max-width:28rem;margin:0 auto}.qrGenerator{flex-direction:column;gap:.65rem;display:flex}.qrGeneratorLabel{color:#374151;font-size:.875rem;font-weight:500}.qrGeneratorInput{background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;max-width:100%;padding:.65rem .75rem;font-size:1rem;line-height:1.4}.qrGeneratorInput:focus{outline-offset:1px;outline:2px solid #3b82f6}.qrGeneratorActions{flex-wrap:wrap;gap:.5rem;display:flex}.qrGeneratorBtn{cursor:pointer;color:#fff;background:#111827;border:none;border-radius:8px;min-height:44px;padding:.5rem 1rem;font-size:.95rem;font-weight:500}.qrGeneratorBtn:disabled{opacity:.55;cursor:not-allowed}.qrGeneratorBtnSecondary{color:#111827;background:#e5e7eb}.qrGeneratorError{color:#b91c1c;margin:0;font-size:.875rem}.qrGeneratorPreview{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-self:flex-start;margin-top:.5rem;padding:1rem}.qrGeneratorPreview img{width:100%;max-width:256px;height:auto;display:block}
