.auth-locked>.sidebar,.auth-locked>.workspace,.auth-locked>.mobile-shade,.auth-locked>#modalRoot{display:none!important}
/* The source diagrams have a 560px minimum. Override it even inside narrow cards. */
.pf-figure .pf-stage{overflow:auto;max-height:none;padding:8px 0;touch-action:pan-x pan-y pinch-zoom}
.pf-figure .pf-stage>svg{width:100%;min-width:0;max-width:none;height:auto;overflow:visible}
.pf-figure .pf-stage.pf-zoomed{max-height:65vh;max-height:65svh;overscroll-behavior:contain}
.pf-figure .pf-scroll-hint{display:none}
.pf-view-tools{display:flex;align-items:center;gap:6px;margin:0 16px 12px;min-width:0}
.pf-view-tools .pf-view-status{margin-right:auto;font-size:12px;color:#64748b;line-height:1.5}
.pf-view-tools button{min-width:40px;min-height:40px;border:1px solid #d3e4ee;border-radius:9px;background:#f8fbfd;color:#0369a1;font-size:16px;padding:6px 10px;touch-action:manipulation}
.pf-view-tools [data-pf-view=fit]{font-size:12px;white-space:nowrap}
.pf-view-tools button:disabled{opacity:.4}
@media(max-width:720px){.pf-figure .pf-stage{padding:8px 0}.pf-view-tools{margin:0 12px 12px;gap:5px}.pf-view-tools .pf-view-status{font-size:11px}.pf-figure .pf-head{display:block}.pf-figure .pf-head>div:first-child{min-width:0}.pf-figure .pf-actions{justify-content:flex-end;margin-top:10px}.pf-modal-shell .pf-figure .pf-head{padding:14px 12px 8px}}
@media print{.pf-view-tools{display:none!important}.pf-figure .pf-stage{max-height:none!important;overflow:visible}.pf-figure .pf-stage>svg{width:100%!important}}
.account-gate{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:#f1f5ef}
.account-gate[hidden]{display:none}.auth-layout{width:min(950px,100%);display:grid;grid-template-columns:1fr 420px;gap:64px;align-items:center}.auth-intro .brandmark{margin-bottom:28px;width:64px;height:64px;font-size:44px}.auth-intro h1{font-size:42px;line-height:1.35;letter-spacing:-1px;max-width:400px;margin:14px 0 24px}.auth-intro>p{color:#60756b;max-width:340px;font-size:15px}.auth-details{border-top:1px solid #d8e3d9;margin-top:32px;padding-top:22px;color:#557063;font-size:13px;line-height:2.1}.auth-card{background:#fff;border:1px solid #dde6df;border-radius:22px;padding:34px;box-shadow:0 12px 42px #203b2910}.auth-tabs{display:flex;gap:8px;margin-bottom:26px}.auth-tab{flex:1;padding:10px;border:1px solid #dfe8e0;background:#fff;border-radius:9px}.auth-tab.active{background:#173f36;color:#fff;border-color:#173f36}.auth-card h2{margin-bottom:5px}.auth-card .sub{font-size:12px;margin-bottom:24px}.auth-card label{font-size:12px;color:#435e52;margin:0 0 16px}.auth-card input{display:block;width:100%;margin-top:6px;padding:12px;border-radius:9px;background:#fcfdfb}.auth-card .btn{width:100%;margin-top:5px}.auth-error{color:#ae473b;font-size:12px;line-height:1.6;min-height:20px;margin:5px 0}.auth-hint{font-size:11px!important;line-height:1.8;color:#7a8b81;margin:20px 0 0}.auth-kicker{font-size:11px;color:#62816d;letter-spacing:2px}
.sync-status{color:#31775c;border-color:#d8e7db!important;background:#f5faf4!important;font-variant-numeric:tabular-nums;white-space:nowrap}.sync-status[data-state=offline],.sync-status[data-state=conflict],.sync-status[data-state=error]{color:#9b6024;background:#fff7e8!important;border-color:#efdfbb!important}.account-button{max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sync-dialog-note{font-size:12px;line-height:1.9;color:#6a7e73}.sync-conflict{background:#fff5e4;border:1px solid #eddbb7;padding:16px;border-radius:12px;margin:18px 0}.sync-dialog .actions{margin-top:20px}.sync-dialog .btn{white-space:normal}.draft-row{display:flex;align-items:center;gap:14px;justify-content:space-between;padding:10px 0;border-top:1px solid #e6ece5;font-size:12px}.sync-dialog time{font-variant-numeric:tabular-nums}
@media(max-width:1200px){.top-actions{gap:7px}.sync-status{max-width:145px;overflow:hidden;text-overflow:ellipsis}.top-actions .searchbox{max-width:190px}}
@media(max-width:720px){.topbar{height:auto!important;padding:11px 16px!important;z-index:20!important}}
@media(max-width:720px){.auth-layout{grid-template-columns:1fr;gap:25px;width:min(440px,100%)}.auth-intro h1{font-size:29px;margin:8px 0 10px}.auth-intro .brandmark{margin-bottom:16px;width:46px;height:46px;font-size:33px}.auth-intro>p{font-size:12px;margin:0}.auth-details{display:none}.auth-card{padding:25px}.account-gate{padding:28px 20px}.topbar{height:auto;min-height:65px;flex-wrap:wrap;padding-top:11px;padding-bottom:11px;row-gap:8px}.top-actions{width:100%;justify-content:flex-end;gap:7px}.top-actions .searchbox{display:none}.sync-status{margin-right:auto;max-width:170px;font-size:11px}.account-button{max-width:100px;font-size:11px}.top-actions>.smallbtn:last-child{font-size:11px;padding:8px}.sync-dialog .actions{flex-direction:column;align-items:stretch}}
