:root{color:#18363d;font-synthesis:none;background:#edf1ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;overflow:hidden}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{flex-direction:column;height:100dvh;min-height:0;display:flex;overflow:hidden}.topbar{color:#fff;background:#143b46;flex:none;justify-content:space-between;align-items:center;gap:16px;height:70px;padding:0 24px;display:flex;box-shadow:0 3px 14px #143b4622}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#dbeceb;border:1px solid #8db6bd;border-radius:9px;place-items:center;width:39px;height:39px;font-size:25px;font-weight:800;display:grid}.brand strong{letter-spacing:.06em;font-size:19px}.brand em{color:#a8d8d4;font-style:normal}.brand small{color:#a8bdc3;margin-top:1px;font-size:11px;display:block}.top-status{align-items:center;gap:14px;font-size:12px;display:flex}.library-toggle{color:#fff;white-space:nowrap;background:#24525c;border:1px solid #789ca3;border-radius:6px;margin-right:auto;padding:8px 10px;font-size:11px;font-weight:700}.mobile-inspector-toggle,.inspector-close{display:none}.access-shell{background:#e9eeeb;place-items:center;min-height:100dvh;padding:24px;display:grid}.access-card{background:#fff;border:1px solid #d8e4df;border-radius:12px;width:min(100%,430px);padding:32px;box-shadow:0 12px 36px #163e4430}.access-brand{letter-spacing:.12em;color:#164755;font-size:14px;font-weight:800}.access-brand span{color:#2b898a}.access-card h1{margin:22px 0 10px;font-size:25px}.access-card p{color:#526d73;margin:0 0 22px;font-size:14px;line-height:1.55}.access-action{color:#fff;background:#186f79;border:0;border-radius:7px;padding:12px 18px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.status-pill{border-radius:100px;padding:7px 11px;font-weight:700}.status-pill.local{color:#ffdda2;background:#6c4920}.status-pill.server{color:#d3f4df;background:#236a61}.queue-count{color:#bed4d9}.message{color:#684d16;background:#fff0d7;border-bottom:1px solid #e8c784;justify-content:space-between;align-items:center;padding:9px 20px;font-size:13px;display:flex}.message button{color:inherit;background:0 0;border:0;font-size:20px}.main-grid{flex:1;grid-template-columns:280px minmax(0,1fr) 260px;min-width:0;min-height:0;display:grid;overflow:hidden}.library-collapsed .main-grid{grid-template-columns:minmax(0,1fr) 260px}.library-collapsed .library{display:none}.library,.inspector{background:#fff;flex-direction:column;min-height:0;display:flex}.library{border-right:1px solid #dbe3e1}.inspector{border-left:1px solid #dbe3e1;overflow:hidden}.inspector-top{border-bottom:1px solid #dbe3e1;flex-direction:column;flex:none;height:148px;display:flex;overflow:hidden}.inspector .panel-heading{align-items:flex-start;gap:4px;padding:10px 10px 2px}.inspector .panel-heading small,.inspector .info-card small{font-size:8px}.inspector .panel-heading h2{white-space:nowrap;margin:1px 0 0;font-size:15px}.export-trigger{color:#176876;white-space:nowrap;background:#f4fbf9;border:1px solid #a9c9c4;border-radius:5px;padding:5px 7px;font-size:10px;font-weight:800}.inspector-content{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:15px;overflow-y:auto}.panel-heading{justify-content:space-between;align-items:center;padding:23px 19px 8px;display:flex}.panel-heading small,.info-card small{letter-spacing:.13em;color:#6b858a;font-size:10px;font-weight:800}.panel-heading h2{letter-spacing:-.03em;margin:4px 0 0;font-size:20px}.panel-heading>span{color:#607c82;font-size:11px}.helper{color:#668087;margin:6px 19px 19px;font-size:12px;line-height:1.5}.project-list{flex:1;overflow:auto}.project{border-top:1px solid #e8eeec;padding:16px 12px}.project-title{align-items:center;gap:8px;margin:0 6px 9px;font-size:12px;display:flex}.project-code{color:#235b5a;background:#e5efec;border-radius:4px;padding:4px 6px;font-size:10px;font-weight:800}.document-row{cursor:pointer;border-radius:7px;align-items:center;gap:9px;padding:10px 7px;font-size:12px;display:flex}.document-row:hover{background:#f1f6f4}.document-row input{accent-color:#287b7d;width:16px;height:16px;margin:0}.document-row span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.document-description{flex:1;min-width:0}.document-description small{color:#789095;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:10px;display:block;overflow:hidden}.file-icon{color:#a85b4c;background:#fcf0ed;border:1px solid #e9cfc9;border-radius:3px;padding:5px 4px;font-size:9px;font-weight:800}.primary{color:#fff;background:#186f79;border:0;border-radius:7px;padding:12px 14px;font-weight:700}.open-button{justify-content:space-between;margin:15px;display:flex}.library-foot,.inspector-foot{color:#789095;border-top:1px solid #e7edeb;padding:15px 19px;font-size:11px;line-height:1.4}.library-foot strong{color:#315961;margin-bottom:3px;display:block}.library-modes{border-bottom:1px solid #e3ebe8;gap:5px;padding:2px 12px 9px;display:flex}.library-modes button{color:#36656b;background:#fff;border:1px solid #cbdcd8;border-radius:6px;flex:1;padding:7px;font-size:11px;font-weight:700}.library-modes button.active{color:#155d69;background:#e6f3f1;border-color:#74b5b3}.sharepoint-picker{flex-direction:column;flex:1;min-height:0;font-size:11px;display:flex}.picker-toolbar{justify-content:space-between;align-items:center;gap:5px;padding:10px 12px 5px;display:flex}.picker-toolbar button,.picker-path button,.picker-selection button{color:#176876;background:0 0;border:0;font-size:11px}.picker-path{border-bottom:1px solid #e7eeeb;flex-wrap:wrap;align-items:center;gap:3px;margin:0;padding:4px 11px 9px;display:flex}.picker-path button{text-overflow:ellipsis;white-space:nowrap;max-width:155px;padding:3px;overflow:hidden}.picker-list{overscroll-behavior:contain;flex:1;min-height:0;overflow:auto}.picker-folder,.picker-file{text-align:left;color:#315961;background:#fff;border:0;border-bottom:1px solid #edf1ef;align-items:center;gap:8px;width:100%;padding:9px 12px;display:flex}.picker-folder:hover,.picker-file:hover{background:#f1f6f4}.picker-folder>span:nth-child(2),.picker-file>span{flex:1;min-width:0}.picker-folder strong,.picker-file strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;display:block;overflow:hidden}.picker-folder small,.picker-file small{color:#789095;margin-top:3px;display:block}.picker-group-title{color:#315961;background:#f1f6f4;margin:0;padding:8px 12px 3px;font-size:11px;font-weight:700}.picker-root-row{border-bottom:1px solid #edf1ef;align-items:stretch;display:flex}.picker-root-row .picker-folder{border-bottom:0;flex:1;width:auto}.picker-star{color:#176876;cursor:pointer;background:#fff;border:0;padding:0 14px;font-size:20px}.picker-more{color:#176876;text-align:left;cursor:pointer;background:#f1f6f4;border:0;width:100%;padding:10px}.picker-file input{accent-color:#287b7d;width:16px;height:16px}.picker-selection{border-top:1px solid #dce7e3;max-height:28%;padding:9px 12px;overflow:auto}.picker-selection>strong{margin-bottom:4px;display:block}.picker-selection>div{border-bottom:1px solid #edf1ef;justify-content:space-between;align-items:center;gap:6px;display:flex}.picker-selection>div span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.picker-selection>small{color:#718a8d;margin-top:7px;line-height:1.4;display:block}.picker-error{color:#a13930;background:#fff0ed;border-radius:4px;margin:5px 11px;padding:8px}.picker-note{color:#789095;padding:7px 12px}.workspace{background:#e9eeeb;flex-direction:column;min-width:0;min-height:0;display:flex;position:relative}.tabs{background:#f9fbfa;border-bottom:1px solid #d5dfdc;flex:none;align-items:stretch;height:45px;display:flex;overflow:auto}.tabs-placeholder{color:#8a9c9e;padding:14px 20px;font-size:12px}.tab{border-right:1px solid #dce4e1;align-items:center;min-width:130px;max-width:230px;display:flex}.tab.active{background:#fff;border-top:3px solid #1f8290}.tab button{text-align:left;color:#5c777e;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:0;font-size:11px;overflow:hidden}.tab button:first-child{flex:1;padding:12px 10px 12px 14px}.tab.active button{color:#1f515b;font-weight:700}.tab .close-tab{padding:0 11px;font-size:17px}.toolbar{background:#fff;border-bottom:1px solid #dbe4e0;flex:none;justify-content:space-between;align-items:center;gap:10px;height:63px;padding:6px 14px;display:flex;overflow-x:auto}.tool-group{align-items:center;gap:3px;display:flex}.tool{color:#507079;background:0 0;border:1px solid #0000;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-width:55px;height:48px;display:flex}.tool span{font-size:21px;line-height:22px}.tool small{margin-top:2px;font-size:9px}.tool.active{color:#0f6372;background:#e6f3f1;border-color:#9dd0cb}.page-controls{white-space:nowrap;color:#577079;align-items:center;gap:7px;font-size:12px;display:flex}.page-controls button{background:#fff;border:1px solid #d7e2df;border-radius:5px;width:25px;height:28px;font-size:19px}.pdf-stage{touch-action:none;overscroll-behavior:contain;cursor:grab;flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.pdf-stage:active{cursor:grabbing}.pdf-page{background:#fff;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 28px #24423d2a}.pdf-page canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.overlay{width:100%;height:100%;position:absolute;inset:0}.overlay.pan{pointer-events:none}.overlay.draw{touch-action:none;cursor:crosshair}.edit-controls,.measure-banner{background:#f8fbfa;border-bottom:1px solid #dbe4e0;flex:none;justify-content:space-between;align-items:center;gap:8px;padding:6px 14px;font-size:11px;display:flex;overflow:auto}.control-section{white-space:nowrap;align-items:center;gap:6px;display:flex}.control-section button,.measure-banner button,.note-editor button,.item-row button{color:#276d73;background:#fff;border:1px solid #c6d9d6;border-radius:5px;padding:5px 8px;font-size:11px}.control-section label{align-items:center;gap:4px;display:flex}.control-section input[type=color]{background:0 0;border:0;width:29px;height:26px;padding:0}.control-section select,.layer-controls select,.note-editor select{background:#fff;border:1px solid #c6d9d6;border-radius:4px;padding:4px}.touch-toggle input{accent-color:#287b7d}.measure-banner{color:#245960;background:#eaf4f3;justify-content:flex-start}.measure-banner button:first-of-type{color:#fff;background:#186f79}.layer-controls{color:#4b7078;flex-direction:column;gap:7px;margin:0 14px 12px;font-size:11px;display:flex}.layer-controls h3{text-transform:uppercase;letter-spacing:.12em;margin:3px 0;font-size:11px}.layer-controls input{accent-color:#287b7d}.export-controls,.offline-controls{gap:6px;margin:0 14px 12px;display:grid}.export-controls h3,.offline-controls h3{text-transform:uppercase;letter-spacing:.12em;color:#4b7078;margin:3px 0;font-size:11px}.export-controls button,.offline-controls button{color:#226c71;text-align:left;background:#f6fcfa;border:1px solid #94bfbc;border-radius:5px;padding:8px;font-size:11px;font-weight:700}.export-controls small,.offline-controls small{color:#789095;font-size:10px}.note-editor{flex-direction:column;gap:5px;display:flex}.note-editor input:not([type=checkbox]),.detail-fields input{border:1px solid #cbdcd8;border-radius:5px;width:100%;padding:7px;font-size:12px}.note-editor small{color:#6b8287;font-size:11px}.detail-fields{grid-template-columns:1fr 1fr;gap:5px;display:grid}.field-hint{color:#6b8287;align-self:center;font-size:11px}.material-line{grid-template-columns:minmax(90px,2fr) minmax(58px,1fr) minmax(58px,1fr) auto;gap:4px;display:grid}.material-line input{min-width:0}.item-row>div{flex:1;min-width:0}.error-banner{z-index:2;color:#a13930;background:#fff0ed;border-radius:6px;padding:10px 14px;position:absolute}.empty-state{text-align:center;color:#69838a;max-width:330px;margin:auto}.empty-state h2{color:#2b5058;font-size:21px}.empty-state p{font-size:13px;line-height:1.6}.empty-icon{color:#9bb8b8;font-size:54px}.info-card{background:#f5f8f7;border:1px solid #e0eae6;border-radius:8px;flex-direction:column;gap:6px;margin:14px;padding:13px;display:flex}.info-card strong{font-size:13px;line-height:1.4}.info-card span{color:#6b8287;font-size:11px}.inspector .info-card{gap:2px;min-width:0;margin:auto 10px 8px;padding:7px 8px}.inspector .info-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.inspector .info-card span{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.status-card{border:1px solid #dce8e5;border-radius:8px;margin:0 14px 14px;padding:14px}.status-card>div{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.status-card small{color:#789095;margin:7px 0 13px;display:block}.status-card button{color:#226c71;background:#f6fcfa;border:1px solid #94bfbc;border-radius:5px;padding:7px 9px;font-size:11px;font-weight:700}.status-dot,.item-state{background:#52a885;border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.status-dot,.item-state.local{background:#e5a64d}.note-editor{margin:0 14px 15px}.note-editor label{color:#4b7078;font-size:11px;font-weight:800}.note-editor textarea{resize:vertical;border:1px solid #cbdcd8;border-radius:6px;width:100%;height:86px;margin-top:7px;padding:9px;font-size:12px;display:block}.item-list{padding:0 14px}.item-list h3{text-transform:uppercase;letter-spacing:.12em;color:#70898e;margin:10px 0 9px;font-size:11px}.item-list .helper{margin:0}.item-row{border-bottom:1px solid #edf1ef;align-items:flex-start;gap:9px;padding:9px 0;display:flex}.item-row .item-state{margin-top:4px}.item-row strong{font-size:12px;display:block}.item-row small{color:#81979a;word-break:break-word;margin-top:2px;font-size:11px;line-height:1.35;display:block}.inspector-foot{margin-top:auto}.export-dialog{color:#18363d;border:0;border-radius:12px;width:min(430px,100vw - 24px);max-height:min(82dvh,700px);padding:0;overflow-y:auto;box-shadow:0 18px 55px #132e354d}.export-dialog::backdrop{background:#112c35a8}.export-dialog-heading{border-bottom:1px solid #e1eae7;justify-content:space-between;align-items:flex-start;gap:14px;padding:18px 20px 12px;display:flex}.export-dialog-heading small{letter-spacing:.12em;color:#6b858a;font-size:9px;font-weight:800}.export-dialog-heading h2{margin:3px 0 4px;font-size:20px}.export-dialog-heading span{color:#607c82;font-size:12px}.export-dialog-heading button{color:#315961;background:#f1f6f4;border:1px solid #d7e6e2;border-radius:6px;width:30px;height:30px;font-size:20px;line-height:1}.export-dialog .export-controls{gap:9px;margin:16px 20px}.export-dialog .export-controls label{font-size:12px}.export-dialog .export-controls button{padding:11px;font-size:12px}.export-dialog-note{color:#638087;background:#f5f8f7;margin:0;padding:13px 20px 18px;font-size:11px;line-height:1.4}@media (width<=1080px){.main-grid{grid-template-columns:230px minmax(0,1fr) 225px}.library-collapsed .main-grid{grid-template-columns:minmax(0,1fr) 225px}.tool{min-width:48px}}@media (width<=760px){.topbar{gap:6px;height:57px;padding:0 7px}.brand{gap:5px}.brand-mark{display:none}.brand strong{font-size:13px}.brand small{display:none}.top-status{gap:4px;font-size:9px}.status-pill{padding:5px 6px}.library-toggle{padding:6px;font-size:9px}.queue-count{display:none}.main-grid,.library-collapsed .main-grid{grid-template-columns:minmax(0,1fr) minmax(155px,38vw)}.library{z-index:20;width:min(290px,74vw);position:absolute;top:57px;bottom:0;left:0;box-shadow:7px 0 18px #123a3b33}.library .panel-heading{padding:11px 14px 4px}.library .panel-heading h2{font-size:16px}.library .helper,.library-foot{display:none}.project-list{overflow:auto}.project{border-top:0;border-right:1px solid #e7edeb;min-width:210px;padding:7px}.document-row{padding:6px}.open-button{margin:7px 12px;padding:8px 11px}.workspace{min-height:0}.toolbar{height:58px;padding:4px 7px}.edit-controls{gap:12px;padding:5px 8px}.measure-banner{padding:5px 8px}.tool{min-width:44px}.tool small{font-size:8px}.page-controls{background:#fff;position:sticky;right:0}.inspector{border-left:1px solid #dbe3e1;min-width:0}.inspector-top{height:143px}.inspector .panel-heading{padding:8px 6px 0}.inspector .panel-heading h2{font-size:13px}.inspector .info-card{margin:auto 6px 6px;padding:6px}.inspector .status-card{margin:5px 6px}.inspector .item-list{padding:0 6px}.note-editor{margin:5px 10px}}@media (width<=600px){.topbar{gap:7px;height:54px;padding:0 8px}.brand{flex:none}.brand strong{letter-spacing:0;font-size:12px}.library-toggle{margin-left:auto;margin-right:0;padding:8px 7px;font-size:10px}.mobile-inspector-toggle{color:#fff;white-space:nowrap;background:#24525c;border:1px solid #789ca3;border-radius:6px;padding:8px 7px;font-size:10px;font-weight:700;display:block}.top-status{display:none}.message{padding:7px 10px;font-size:11px}.main-grid,.library-collapsed .main-grid{flex:1;width:100%;min-height:0;display:block;position:relative;overflow:hidden}.workspace{width:100%;height:100%;min-height:0;position:absolute;inset:0}.library{z-index:20;width:100%;box-shadow:none;position:absolute;inset:0}.library-collapsed .library,.mobile-inspector-open .library{display:none}.library .panel-heading{padding:12px 14px 7px}.library-modes button{min-height:40px;font-size:13px}.picker-toolbar{flex-wrap:wrap;gap:8px;padding:12px}.picker-toolbar strong{flex-basis:100%;font-size:13px}.picker-toolbar button,.picker-path button{min-height:30px;font-size:12px}.picker-folder,.picker-file{min-height:48px;padding:11px 13px}.picker-folder strong,.picker-file strong{font-size:12px}.picker-selection{max-height:32%;padding-bottom:max(10px,env(safe-area-inset-bottom))}.inspector{display:none}.mobile-inspector-open .inspector{z-index:30;border-top:1px solid #b6ccc8;border-left:0;border-radius:12px 12px 0 0;width:100%;height:min(48dvh,400px);min-height:210px;display:flex;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 30px #143b4640}.inspector-close{color:#35636a;background:0 0;border:0;padding:0 5px;font-size:24px;line-height:1;display:block}.inspector-top{height:88px}.inspector .panel-heading{padding:8px 12px 0}.inspector .panel-heading h2{font-size:15px}.inspector .info-card{margin:3px 12px 7px;padding:5px 8px}.inspector .info-card span{display:none}.inspector .status-card{margin:8px 12px}.inspector .item-list{padding:0 12px}.toolbar{overscroll-behavior-x:contain;height:56px;overflow-x:auto}.tool{min-width:47px}.edit-controls{overscroll-behavior-x:contain;overflow-x:auto}.tabs{height:39px}.access-shell{padding:14px}.access-card{padding:24px}}
