:root{--font:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}body{font-family:var(--font);color:#eef2ff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top,#6d5dfc2e,#0000 30%),linear-gradient(#0a0f1f 0%,#0b1020 100%);margin:0}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.app-shell{width:min(1320px,100% - 24px);margin:0 auto;padding:20px 0 50px}.topbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#090e1eb3;border:1px solid #ffffff14;border-radius:18px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;padding:14px 18px;display:flex;box-shadow:0 20px 50px #00000047}.brand{align-items:center;gap:14px;display:flex}.brand-badge{color:#fff;background:linear-gradient(135deg,#6d5dfc,#8d7fff);border-radius:14px;place-items:center;width:46px;height:46px;display:grid;box-shadow:0 10px 25px #6d5dfc59}.brand h1{margin:0;font-size:1.2rem;line-height:1.1}.brand p{color:#a8b1cf;margin:4px 0 0;font-size:.92rem}.topbar-right{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pill{color:#a8b1cf;background:#ffffff08;border:1px solid #ffffff14;border-radius:999px;padding:10px 14px}.hero{grid-template-columns:1.1fr .9fr;gap:20px;margin-bottom:22px;display:grid}.hero-card,.side-card,.panel,.page-card,.modal-card,.ad-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121933cc;border:1px solid #ffffff14;border-radius:20px;box-shadow:0 20px 50px #00000047}.hero-card{padding:28px}.hero-title{letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(2rem,5vw,3.5rem);line-height:.98}.hero-subtitle{color:#a8b1cf;max-width:62ch;margin:0;font-size:1.02rem;line-height:1.7}.hero-badges{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.hero-badges span{color:#d7dcf8;background:#ffffff08;border:1px solid #ffffff14;border-radius:999px;padding:9px 12px}.side-card{flex-direction:column;gap:14px;padding:22px;display:flex}.side-card h2{margin:0;font-size:1.2rem}.side-card p{color:#a8b1cf;margin:0;line-height:1.7}.ad-box{color:#a8b1cf;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(135deg,#ffffff05,#ffffff03),#ffffff05;place-items:center;min-height:100px;font-weight:600;display:grid}.message{color:#edf0ff;background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;margin-bottom:16px;padding:14px 16px}.message.success{background:#18b67a1f;border-color:#18b67a59}.message.error{background:#ef5b5b1f;border-color:#ef5b5b59}.message.info{background:#6d5dfc1f;border-color:#6d5dfc59}.workspace{grid-template-columns:320px 1fr;align-items:start;gap:20px;display:grid}.panel{padding:18px;position:sticky;top:16px}.panel h3{margin:0 0 14px;font-size:1rem}.stack{flex-direction:column;gap:14px;display:flex}.dropzone{text-align:center;background:#ffffff06;border:1.5px dashed #ffffff2e;border-radius:18px;padding:20px;transition:all .25s}.dropzone.dragging{background:#6d5dfc1f;border-color:#8d7fff;transform:translateY(-2px)}.dropzone h4{margin:12px 0 8px;font-size:1rem}.dropzone p{color:#a8b1cf;margin:0;font-size:.94rem;line-height:1.6}.actions{flex-wrap:wrap;gap:10px;display:flex}.btn,.file-btn{cursor:pointer;border:none;border-radius:14px;outline:none;justify-content:center;align-items:center;gap:10px;padding:12px 16px;font-weight:700;transition:transform .2s,opacity .2s,background .2s;display:inline-flex}.btn:hover,.file-btn:hover{transform:translateY(-1px)}.btn:disabled,.file-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{color:#fff;background:linear-gradient(135deg,#6d5dfc,#8d7fff)}.btn-secondary{color:#e5e9ff;background:#ffffff0f;border:1px solid #ffffff14}.btn-danger{color:#fff;background:linear-gradient(135deg,#d9485f,#ef5b5b)}.file-btn{color:#edf0ff;background:#ffffff0f;border:1px solid #ffffff14}.file-btn input{display:none}.field{flex-direction:column;gap:8px;display:flex}.field label{color:#d7dcf8;font-size:.92rem;font-weight:600}.field input[type=text],.field input[type=color],.field select,.field textarea{color:#eef2ff;background:#ffffff0d;border:1px solid #ffffff14;border-radius:14px;outline:none;width:100%;padding:12px 14px}.field input[type=range]{width:100%}.range-meta{color:#a8b1cf;justify-content:space-between;font-size:.86rem;display:flex}.stats{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.stat{background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;padding:14px}.stat strong{margin-bottom:4px;font-size:1.1rem;display:block}.stat span{color:#a8b1cf;font-size:.9rem}.pages-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.pages-header h2{margin:0;font-size:1.1rem}.pages-grid{grid-template-columns:repeat(auto-fill,minmax(285px,1fr));gap:18px;display:grid}.page-card{padding:14px;transition:transform .22s,border-color .22s}.page-card:hover{border-color:#ffffff29;transform:translateY(-3px)}.page-card-top{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.page-chip{color:#e9edff;background:#ffffff0d;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.9rem;font-weight:700;display:inline-flex}.page-card-actions{flex-wrap:wrap;gap:8px;display:flex}.icon-btn{color:#eef2ff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;place-items:center;width:38px;height:38px;display:grid}.icon-btn:hover{background:#ffffff1a}.preview-wrap{background:linear-gradient(135deg,#ffffff08,#ffffff03),#090d1a;border:1px solid #ffffff14;border-radius:18px;place-items:center;height:360px;margin-bottom:14px;display:grid;overflow:hidden}.preview-wrap img{object-fit:contain;width:100%;height:100%}.page-name{color:#a8b1cf;word-break:break-word;min-height:42px;margin:0 0 14px;font-size:.9rem;line-height:1.5}.mini-actions{flex-wrap:wrap;gap:8px;display:flex}.mini-btn{color:#edf0ff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;flex:auto;min-width:92px;padding:10px 12px;font-weight:600}.mini-btn:hover{background:#ffffff1a}.empty-state{text-align:center;background:#ffffff08;border:1px dashed #ffffff29;border-radius:24px;padding:48px 20px}.empty-state h2{margin:14px 0 10px;font-size:1.3rem}.empty-state p{color:#a8b1cf;max-width:60ch;margin:0 auto;line-height:1.8}.footer-note{color:#a8b1cf;text-align:center;margin-top:18px;font-size:.92rem;line-height:1.7}.progress{background:#ffffff14;border:1px solid #ffffff14;border-radius:999px;height:12px;overflow:hidden}.progress>div{background:linear-gradient(135deg,#6d5dfc,#8d7fff);height:100%;transition:width .25s}.modal-backdrop{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:50;background:#040812b8;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{width:min(980px,100%);padding:20px}.modal-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.modal-head h3{margin:0}.modal-body{grid-template-columns:1fr 320px;gap:18px;display:grid}.modal-preview{background:#090d1a;border:1px solid #ffffff14;border-radius:18px;place-items:center;min-height:500px;display:grid;overflow:hidden}.modal-preview img{object-fit:contain;width:100%;height:100%}.modal-side{flex-direction:column;gap:14px;display:flex}.ocr-box{width:min(900px,100%);max-height:85vh;padding:20px;overflow:auto}.ocr-textarea{color:#eef2ff;resize:vertical;background:#ffffff0d;border:1px solid #ffffff14;border-radius:16px;width:100%;min-height:320px;padding:14px;line-height:1.7}.crop-wrapper{flex-direction:column;gap:14px;display:flex}.crop-hint{color:#a8b1cf;font-size:.95rem;line-height:1.7}.crop-canvas-wrap{background:#090d1a;border:1px solid #ffffff14;border-radius:18px;place-items:center;max-height:70vh;padding:12px;display:grid;overflow:auto}.crop-canvas{touch-action:none;cursor:grab;border-radius:12px;max-width:none}.crop-actions{flex-wrap:wrap;gap:10px;display:flex}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1080px){.hero,.workspace,.modal-body{grid-template-columns:1fr}.panel{position:static}}@media (width<=680px){.topbar{flex-direction:column;align-items:stretch}.topbar-right,.actions,.pages-header,.crop-actions{flex-direction:column;justify-content:stretch}.btn,.file-btn,.mini-btn{width:100%}.preview-wrap{height:300px}}.modal-card-annotate{width:min(1280px,100vw - 24px);max-height:min(96vh,1100px)}.annotation-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);align-items:start;gap:18px;min-height:0;display:grid}.annotation-preview{overscroll-behavior:contain;place-items:start center;height:calc(96vh - 150px);min-height:520px;max-height:calc(96vh - 150px);padding:10px;overflow:auto!important}.annotation-canvas-inner{justify-content:center;align-items:flex-start;min-width:100%;padding:4px;display:flex}.annotation-preview .crop-canvas{width:auto;max-width:none;height:auto;display:block}.annotation-side{min-width:0;max-height:calc(96vh - 150px);padding-right:4px;overflow:auto}.signature-panel{overflow:hidden}.signature-panel canvas{width:100%;height:auto;min-height:110px}.annotation-footer-actions{z-index:2;background:linear-gradient(#12193300,#121933eb 18%,#121933fa 100%);margin-top:6px;padding-top:12px;position:sticky;bottom:0}@media (width<=1080px){.modal-card-annotate{width:min(100vw - 14px,980px)}.annotation-layout{grid-template-columns:1fr}.annotation-preview{height:48vh;min-height:48vh;max-height:48vh}.annotation-side{max-height:none;padding-right:0;overflow:visible}}@media (width<=820px){.modal-backdrop{padding:6px}.modal-card-annotate{border-radius:16px;width:calc(100vw - 12px);max-height:calc(100vh - 8px);padding:12px}.annotation-layout{gap:12px}.annotation-preview{border-radius:14px;height:44vh;min-height:44vh;max-height:44vh;padding:6px}.annotation-canvas-inner{min-width:max-content;padding:2px}.annotation-side{flex-direction:column;gap:12px;display:flex}}@media (width<=560px){.modal-card-annotate{border-radius:14px;width:calc(100vw - 6px);max-height:calc(100vh - 4px);padding:10px}.modal-head{align-items:flex-start}.modal-head h3{font-size:.96rem}.annotation-preview{height:40vh;min-height:40vh;max-height:40vh}.annotation-side .actions{flex-direction:column}.annotation-side .btn,.annotation-side .file-btn{width:100%}.signature-panel canvas{min-height:96px}.annotation-footer-actions{background:0 0;padding-top:0;position:static}}html,body{overflow-x:hidden}.modal-backdrop{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;overflow-y:auto}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{flex-direction:column;max-height:min(92vh,1100px);display:flex;overflow:hidden}.modal-head{flex:none}.modal-body{align-items:start;overflow:hidden}.modal-preview{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;max-height:calc(92vh - 150px);overflow:auto}.modal-side{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;max-height:calc(92vh - 150px);padding-right:2px;overflow:auto}.modal-card-ocr{overflow:auto}.crop-canvas-wrap{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:220px;max-height:calc(92vh - 250px)}.crop-actions,.annotation-footer-actions,.modal-side .actions{row-gap:10px}.annotation-side .field,.modal-side .field{min-width:0}@media (width<=1080px){.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{width:min(100vw - 20px,980px)}.modal-body{grid-template-columns:1fr}.modal-preview{max-height:42vh}.modal-side{max-height:none;overflow:visible}}@media (width<=820px){.modal-backdrop{padding:8px;display:block}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{border-radius:16px;width:calc(100vw - 16px);min-height:0;max-height:none;margin:0 auto;padding:12px;overflow:visible}.modal-head{z-index:3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#121933f5;padding-bottom:10px;position:sticky;top:0}.modal-head .actions{flex-direction:row;justify-content:flex-end;align-items:center}.modal-body,.annotation-layout{flex-direction:column;gap:12px;display:flex;overflow:visible}.modal-preview,.annotation-preview{width:100%;height:auto;min-height:36vh;max-height:44vh;padding:8px;overflow:auto!important}.modal-side,.annotation-side{width:100%;max-height:none;padding-right:0;padding-bottom:max(8px, env(safe-area-inset-bottom));overflow:visible}.crop-canvas-wrap{min-height:180px;max-height:42vh;padding:8px}.ocr-box{max-height:none}.ocr-textarea{min-height:42vh}}@media (width<=680px){.topbar-right,.pages-header,.crop-actions{flex-direction:column;justify-content:stretch}.modal-head{align-items:flex-start}.modal-head h3{font-size:1rem;line-height:1.3}.modal-head .icon-btn{flex:none}.modal-side .actions,.annotation-side .actions,.crop-actions,.annotation-footer-actions{flex-direction:column}.modal-side .btn,.modal-side .file-btn,.annotation-side .btn,.annotation-side .file-btn,.crop-actions .btn,.annotation-footer-actions .btn{width:100%}.modal-preview,.annotation-preview{min-height:32vh;max-height:38vh}.crop-canvas-wrap{max-height:38vh}}@media (width<=480px){.modal-backdrop{padding:4px}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{border-radius:14px;width:calc(100vw - 8px);padding:10px}.modal-preview,.annotation-preview{min-height:30vh;max-height:36vh}.ocr-textarea{min-height:36vh}.signature-panel canvas{min-height:90px}}.modal-card-crop{width:min(1180px,100vw - 16px);max-height:min(96vh,1100px)}.crop-wrapper{min-height:0}.crop-canvas-wrap{place-items:start;width:100%;max-height:calc(96vh - 250px);padding:8px}.crop-canvas{display:block}@media (width<=820px){.modal-card-crop{border-radius:14px;width:calc(100vw - 8px);padding:12px}.crop-canvas-wrap{max-height:calc(100vh - 250px);padding:6px}}@media (width<=560px){.crop-canvas-wrap{max-height:calc(100vh - 235px);padding:4px}}html,body,#root{min-height:100%}body{overflow-x:hidden}.modal-backdrop{z-index:9999;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;position:fixed;inset:0;overflow:hidden auto}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{box-sizing:border-box;width:min(980px,100vw - 24px);max-width:calc(100vw - 24px)}.modal-head,.annotation-footer-actions,.crop-actions{z-index:2;position:relative}.modal-body,.annotation-layout{min-height:0}.modal-preview,.modal-side,.annotation-preview,.annotation-side,.crop-canvas-wrap,.ocr-box{min-width:0;min-height:0}@media (width<=1080px){.modal-body,.annotation-layout{grid-template-columns:1fr!important}.modal-preview,.annotation-preview{max-height:44dvh}}@media (width<=820px){.modal-backdrop{padding:max(8px, env(safe-area-inset-top)) 8px max(10px, env(safe-area-inset-bottom));justify-content:center!important;align-items:flex-start!important;display:flex!important}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{min-height:0;margin:0 auto;border-radius:16px!important;width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:none!important;padding:12px!important;overflow:visible!important}.modal-head{background:#121933f5;margin-bottom:12px;padding-bottom:10px;position:sticky;top:0}.modal-body,.annotation-layout{grid-template-columns:1fr!important;gap:12px!important;display:grid!important;overflow:visible!important}.modal-preview,.annotation-preview{border-radius:14px;padding:6px;height:auto!important;min-height:36dvh!important;max-height:none!important;overflow:auto!important}.modal-side,.annotation-side,.ocr-box,.crop-canvas-wrap{max-height:none!important;padding-right:0!important;overflow:visible!important}.crop-canvas-wrap{min-height:220px}.annotation-footer-actions,.crop-actions{background:0 0!important;padding-top:0!important;position:static!important}.modal-side .actions,.annotation-side .actions,.crop-actions{flex-direction:column;display:flex}.modal-side .btn,.modal-side .file-btn,.annotation-side .btn,.annotation-side .file-btn,.crop-actions .btn{width:100%}}@media (width<=560px){.modal-backdrop{padding:max(6px, env(safe-area-inset-top)) 6px max(8px, env(safe-area-inset-bottom))}.modal-card,.modal-card-editor,.modal-card-crop,.modal-card-ocr,.modal-card-annotate{border-radius:14px!important;width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important;padding:10px!important}.modal-head{align-items:flex-start;gap:8px}.modal-head h3{font-size:.96rem;line-height:1.25}.modal-preview,.annotation-preview{min-height:34dvh!important}.ocr-textarea{min-height:42dvh}.signature-panel canvas{min-height:96px}}.workspace{grid-template-columns:minmax(300px,360px) minmax(0,1fr)}.workspace-main{min-width:0}.workspace-empty{grid-template-columns:minmax(320px,760px);justify-content:center}.workspace-empty .panel{position:relative;top:0}.workspace-empty .workspace-main{display:none}.workspace-has-pages .panel{position:sticky;top:16px}@media (width>=1280px){.workspace-has-pages{grid-template-columns:minmax(320px,380px) minmax(0,1fr);gap:24px}.pages-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (width<=1080px){.workspace,.workspace-has-pages,.workspace-empty{grid-template-columns:1fr}.workspace .panel,.workspace-has-pages .panel,.workspace-empty .panel{position:relative;top:0}.workspace-empty .workspace-main{display:none}}
