:root{font-family:Inter,"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif;color:#1c293c;background:#eef2f8;font-size:13px;--line:#dce3ee;--muted:#6b798b;--brand:#3169e4;--brand-dark:#214fae}
*{box-sizing:border-box}html,body,#app{margin:0;height:100%;min-height:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.35;cursor:not-allowed}.hidden{display:none!important}
#app{display:flex;flex-direction:column;overflow:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:64px;background:white;padding:10px 18px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:11px;align-items:center;white-space:nowrap}.brand-icon{height:37px;width:37px;display:grid;place-items:center;color:white;border-radius:11px;background:linear-gradient(135deg,#3676f8,#674cba);font-size:27px}.brand strong{font-size:17px;display:block;letter-spacing:-.3px}.brand-caption{display:block;color:var(--muted);font-size:10px;letter-spacing:.4px}.top-actions,.history-tools,.tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.btn,.icon-btn,.tool{border:1px solid var(--line);background:white;color:#31435c;border-radius:7px;padding:9px 11px;font-weight:600;transition:background .15s}.btn:hover,.icon-btn:hover,.tool:hover{background:#eff4ff}.btn.primary{background:var(--brand);border-color:var(--brand);color:white}.btn.primary:hover{background:var(--brand-dark)}.btn.emphasize{background:#132b52;color:white;border-color:#132b52}.btn.emphasize:hover{background:#254574}.btn.subtle{background:#f6f8fc;color:#50637c}.btn.large{padding:13px 20px}.icon-btn{min-width:34px;padding:8px}.menubar{background:#fff;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 14px;border-bottom:1px solid var(--line)}.tool{padding:7px 10px}.tool.active{background:#e9f0ff;color:#174dbb;border-color:#8eafea}.separator{height:22px;width:1px;background:var(--line);margin:0 5px}#zoomLabel{font-size:12px;color:#596a7a;min-width:39px;text-align:center}
.main{display:flex;flex:1;min-height:0}.sidebar{width:218px;flex:none;background:#fbfcff;border-right:1px solid var(--line);display:flex;flex-direction:column}.properties{width:254px;flex:none;background:#fbfcff;border-left:1px solid var(--line);overflow-y:auto}.pane-head{min-height:45px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 14px}.pane-head span{color:var(--muted);font-size:11px}.page-actions{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;padding:9px;border-bottom:1px solid var(--line)}.page-actions button{border:1px solid var(--line);border-radius:5px;background:white;padding:7px 0;font-size:12px}.thumbnail-list{flex:1;overflow:auto;padding:13px}.thumb{width:100%;padding:9px;border-radius:9px;border:1px solid transparent;background:transparent;margin-bottom:11px;cursor:pointer;text-align:center;display:block;color:#435572}.thumb.active{border-color:#8eb0f1;background:#eaf1ff}.thumb canvas{max-width:100%;box-shadow:0 2px 7px #1f335125;background:white;display:block;margin:auto auto 7px}.thumb small{display:block;font-size:11px}.empty-side{color:#92a0b3;text-align:center;line-height:1.8;font-size:12px;margin:28px 8px}.sidebar-foot{font-size:10px;color:#6e8197;border-top:1px solid var(--line);padding:12px}.privacy-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#33aa79;margin-right:4px}
.workspace{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.workspace-head{min-height:39px;background:#f6f8fc;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 16px;color:#516074;font-size:12px}.filetitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:80%}.scroll-area{flex:1;min-height:0;overflow:auto;display:flex;align-items:flex-start;justify-content:center;padding:30px 24px;background:radial-gradient(ellipse at top,#f4f6fb,#e7ecf5)}.page-frame{position:relative;box-shadow:0 10px 35px #25375836;background:white;flex:none;line-height:0}.page-frame canvas{display:block}.overlay{position:absolute;left:0;top:0;cursor:crosshair;touch-action:none}.overlay.select{cursor:default}.overlay.edit{cursor:text}.annotation{position:absolute;box-sizing:border-box;cursor:move;white-space:pre-wrap;word-break:break-word;line-height:1.22;overflow:hidden;user-select:none}.annotation.selected{outline:2px solid #3169e4;outline-offset:1px}.annotation.text,.annotation.replace{font-family:"Yu Gothic",Meiryo,Arial,sans-serif}.annotation.replace{background:white}.annotation.redact{background:#050505}.annotation.rect{border:2px solid #e6504e}.annotation.highlight{background:#ffde4b66}.annotation.image,.annotation.imageReplace{object-fit:fill;background:#fff}.ink-preview{position:absolute;left:0;top:0;pointer-events:none;overflow:visible}.ink-preview polyline{fill:none;stroke-linecap:round;stroke-linejoin:round}.text-hotspot{position:absolute;cursor:text;pointer-events:auto;outline:1px dashed #d59e3c;background:rgba(255,204,72,.08);transition:background .1s}.text-hotspot:hover{outline:2px solid #e09b14;background:rgba(255,204,72,.28)}
.welcome{margin:auto;max-width:610px;text-align:center;padding:42px 24px;color:#60718b}.welcome h1{color:#253c60;font-size:24px;margin:0 0 11px}.welcome p{line-height:1.9}.welcome-icon{font-size:64px;margin:0 0 12px;color:#4d79dc}.welcome-alert{margin-top:27px;background:#fff7e8;border:1px solid #f6dda7;border-radius:9px;color:#906e38;font-size:11px;line-height:1.8;padding:15px}.statusbar{min-height:29px;background:white;border-top:1px solid var(--line);display:flex;gap:10px;align-items:center;justify-content:space-between;padding:0 12px;color:#627084;font-size:11px}.inspector{padding:14px}.inspector h3{font-size:14px;margin:0 0 13px}.field{margin:0 0 12px}.field label{display:block;font-size:11px;color:#5b6e88;margin-bottom:4px}.field input,.field textarea,.field select,.search-row input{width:100%;border:1px solid #ced8e7;border-radius:7px;padding:8px;background:white;min-width:0}.field input[type=color]{padding:3px;height:34px}.field textarea{min-height:100px;resize:vertical}.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:9px}.inspector-actions{display:flex;gap:7px}.tips{margin:12px;padding:12px;border:1px solid #e9d6aa;background:#fffaf0;border-radius:9px;color:#826938;font-size:11px;line-height:1.65}.tips p{margin:7px 0}.search-box{margin:12px;border-top:1px solid var(--line);padding-top:13px}.search-box label{display:block;font-size:12px;font-weight:600;margin-bottom:7px}.search-row{display:flex;gap:5px}.small-muted{color:#7c8ba0;font-size:11px;margin-top:9px;line-height:1.6}.busy{position:fixed;inset:0;background:#0b193b7c;display:grid;place-items:center;z-index:1000}.busy-box{min-width:260px;max-width:90vw;padding:30px;border-radius:14px;text-align:center;background:white;box-shadow:0 20px 50px #172e5155}.busy-box p{font-size:11px;color:#6d7d91}.spinner{width:33px;height:33px;border:3px solid #d9e6ff;border-top-color:#3169e4;border-radius:50%;animation:spin .8s linear infinite;margin:0 auto 16px}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:46px;left:50%;transform:translateX(-50%);max-width:80vw;padding:13px 19px;background:#21324a;color:white;border-radius:8px;box-shadow:0 7px 30px #1829414d;font-size:12px;z-index:1200}
@media(max-width:1050px){.sidebar{width:165px}.properties{width:210px}.topbar{flex-wrap:wrap}.top-actions{justify-content:flex-end}.tool span{display:none}}@media(max-width:750px){.sidebar{width:95px}.properties{display:none}.page-actions{grid-template-columns:repeat(3,1fr)}.topbar{padding:8px}.btn{padding:7px}.menubar{padding:7px;flex-wrap:wrap}.scroll-area{padding:16px 8px}.brand-caption{display:none}}

.annotation.text,.annotation.replace{font-family:var(--annotation-font,"Yu Gothic",Meiryo,sans-serif)}
.font-box{padding:13px 13px 12px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.font-box strong{font-size:12px}.font-box label{font-size:11px;font-weight:600;color:#586a85}.font-box p,.font-box small{font-size:10px;line-height:1.5;color:#78889e;margin:0}
.font-box select{width:100%;border:1px solid #d0d8e5;border-radius:6px;padding:7px;background:white;color:#31435c}
.font-box .file-label{display:block;text-align:center;cursor:pointer;white-space:normal}
.office-action{background:#edf4ff;border-color:#afc5eb;color:#1d4e99}
.office-modal{position:fixed;inset:0;z-index:950;display:grid;place-items:center;background:rgba(12,24,49,.6);padding:15px}
.office-panel{background:#fff;border-radius:14px;box-shadow:0 20px 60px #101e3550;width:min(550px,98vw);padding:24px;display:flex;flex-direction:column;gap:14px}
.office-heading{display:flex;align-items:center;justify-content:space-between}.office-heading h2{font-size:18px;margin:0}
.office-panel .field{display:flex;flex-direction:column;gap:7px}.office-panel .field select{padding:10px;border:1px solid #b6c7dd;border-radius:8px}
.office-preview{padding:12px;background:#eff4fc;color:#39577b;border-radius:8px;font-size:12px;line-height:1.6}
.office-check{display:flex;gap:8px;align-items:flex-start;line-height:1.5;color:#54647b;font-size:11px}
.office-check input{margin-top:3px}.office-footer{display:flex;justify-content:flex-end;gap:8px}


/* v2.2 image editing */
.annotation.image,.annotation.imageReplace{overflow:hidden;background:#fff;border:1px solid #d6deea}
.annotation.image .image-inner,.annotation.imageReplace .image-inner{position:absolute;max-width:none;user-select:none;pointer-events:none;-webkit-user-drag:none}
.mini-actions{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 2px}.mini-actions .btn{padding:6px 9px;font-size:11px}.note-box{padding:10px;background:#f3f7fe;border:1px solid #d9e3f3;border-radius:8px;color:#4f6687;font-size:11px;line-height:1.6;margin:8px 0}.image-grid2{display:grid;grid-template-columns:1fr 1fr;gap:8px}

/* Optional image-PDF OCR search */
.ocr-check{display:flex;align-items:flex-start;gap:6px;font-size:11px;color:#506580;line-height:1.5;margin:10px 0 5px}.ocr-check input{margin-top:3px}

.image-crop-layer{position:absolute;left:0;top:0;overflow:hidden;transform-origin:center center;pointer-events:none}

/* Native direct edits have a visible editing preview; PDF export patches content streams. */
.annotation.directText{border:1px dashed #138b70;background:white;font-family:var(--annotation-font,Arial,sans-serif);}
