/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@font-face{font-family:Berkeley Mono;src:url(/assets/BerkeleyMono-Regular-DDjiK5v8.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.inline{display:inline}.table{display:table}.resize{resize:both}.italic{font-style:italic}.underline{text-decoration-line:underline}}:root{--font-ui:"Berkeley Mono", "Fira Code", monospace;--font-mono:"Berkeley Mono", "Fira Code", monospace;--font-body:-apple-system, BlinkMacSystemFont, "Inter", sans-serif;--bg-base:#111113;--bg-sidebar:#18181b;--bg-toolbar:#1c1c1f;--bg-hover:#27272a;--bg-active:#2d2d32;--border:#2e2e33;--text-primary:#e4e4e7;--text-secondary:#71717a;--text-muted:#52525b;--accent:#60a5fa;--danger:#f87171;--toolbar-h:44px;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}[data-theme=light]{--bg-base:#f5f5f4;--bg-sidebar:#eeede9;--bg-toolbar:#e8e7e3;--bg-hover:#dddcd8;--bg-active:#d4d3cf;--border:#cccbc7;--text-primary:#1c1c1e;--text-secondary:#6b6b6b;--text-muted:#a0a0a0;--accent:#2563eb;--danger:#dc2626}*,:before,:after{box-sizing:border-box;margin:0;padding:0;transition:background-color .2s,color .2s,border-color .2s}html,body,#root{background:var(--bg-base);height:100%;color:var(--text-primary);font-family:var(--font-ui);font-size:14px}.app-layout{height:100vh;display:flex;overflow:hidden}.app-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.app-loading,.app-error{height:100vh;color:var(--text-secondary);justify-content:center;align-items:center;font-size:14px;display:flex}.sb-toggle{all:unset;cursor:pointer;font-family:var(--font-mono);color:var(--text-muted);-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:20px;line-height:1;transition:color .15s}.sb-toggle:hover{color:var(--text-secondary)}.sb-toggle--open{color:var(--text-primary)}.sb-toggle--fixed{z-index:300;position:fixed;top:16px;left:16px}.sb{background:var(--bg-base);border-right:1px solid var(--border);z-index:200;pointer-events:none;flex-direction:column;width:240px;height:100vh;padding:14px 0 5px;transition:transform .24s,border-color .2s;display:flex;position:fixed;top:0;left:0;overflow:hidden;transform:translate(-100%)}.sb--visible{pointer-events:all;transform:translate(0)}.sb-header{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-bottom:14px;padding:0 14px 14px 16px;line-height:1;display:flex}.sb-logo{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);-webkit-user-select:none;user-select:none;flex:1;font-size:12px;font-weight:400;line-height:1}.sb-pin{all:unset;cursor:pointer;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;transition:color .15s;display:flex}.sb-pin:hover{color:var(--text-secondary)}.sb-pin--active{color:var(--text-primary)}.sb-nav{scrollbar-width:none;flex:1;padding:0 14px 0 20px;overflow:hidden auto}.sb-nav::-webkit-scrollbar{display:none}.sb-tree-row{margin-bottom:2px}.sb-airport-row{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;padding:3px 0;display:flex}.sb-airport-row:hover .sb-del{opacity:1}.sb-airport-row:hover .sb-airport-code{color:var(--text-secondary)}.sb-dash{font-family:var(--font-mono);color:var(--text-muted);flex-shrink:0;width:10px;font-size:11px}.sb-airport-code{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-muted);font-size:11px;font-weight:500;transition:color .15s}.sb-airport-row--active .sb-airport-code{color:var(--text-primary);font-weight:700}.sb-airport-row--add:hover .sb-dash{color:var(--text-secondary)}.sb-airport-code--add{font-weight:400}.sb-airport-row--add:hover .sb-airport-code--add{color:var(--text-secondary)}.sb-section-row{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:5px;padding:2px 0 2px 4px;display:flex}.sb-section-row:hover .sb-del{opacity:1}.sb-section-row:hover .sb-section-title{color:var(--text-secondary)}.sb-tree-branch{font-family:var(--font-mono);color:var(--text-muted);opacity:.5;-webkit-user-select:none;user-select:none;flex-shrink:0;font-size:10px}.sb-section-title{font-family:var(--font-mono);color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;transition:color .15s;overflow:hidden}.sb-section-row--active .sb-section-title{color:var(--text-primary);font-weight:600}.sb-section-row--add{cursor:pointer}.sb-section-add{font-family:var(--font-mono);color:var(--text-muted);font-size:13px}.sb-section-row--add:hover .sb-section-add{color:var(--text-secondary)}.sb-del{all:unset;cursor:pointer;opacity:0;color:var(--text-muted);flex-shrink:0;padding:0 4px;font-size:11px;line-height:1;transition:color .12s,opacity .12s}.sb-del:hover{color:var(--danger)}.sb-form{border-top:1px solid var(--border);flex-direction:column;gap:8px;margin-top:4px;padding:10px 0 6px;display:flex}.sb-form--inline{border-top:none;margin-top:0;padding-top:4px;padding-left:14px}.sb-form-field{flex-direction:column;gap:4px;display:flex}.sb-form-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:9px;font-weight:400}.sb-form-input{background:var(--bg-toolbar);border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-primary);width:100%;caret-color:var(--text-primary);outline:none;padding:5px 7px;font-size:11px;transition:border-color .15s,background .15s}.sb-form-input:focus{border-color:var(--text-primary);background:var(--bg-hover)}.sb-form-input::placeholder{color:var(--text-muted)}.sb-form-actions{gap:6px;display:flex}.sb-form-btn{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:0;flex:1;padding:6px 0;font-size:9px;font-weight:400;transition:background .15s,color .15s,border-color .15s}.sb-form-btn--cancel{border:1px solid var(--border);color:var(--text-muted);background:0 0}.sb-form-btn--cancel:hover{border-color:var(--text-muted);color:var(--text-secondary)}.sb-form-btn--submit{border:1.5px solid var(--text-primary);color:var(--text-primary);background:0 0}.sb-form-btn--submit:hover{background:var(--text-primary);color:var(--bg-base)}.sb-footer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:12px 16px 14px;display:flex}.sb-auth{border:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.sb-auth-status{flex-direction:column;gap:2px;min-width:0;display:flex}.sb-auth-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.sb-auth-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);border:1px solid var(--text-secondary);flex-shrink:0;padding:3px 8px;font-size:9px;transition:background .15s,color .15s,border-color .15s}.sb-auth-btn:hover{background:var(--text-primary);color:var(--bg-base);border-color:var(--text-primary)}.sb-footer-meta{gap:6px;display:flex}.sb-footer-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);border:1px solid var(--border);text-align:center;flex:1;padding:5px 0;font-size:9px;transition:background .15s,color .15s,border-color .15s}.sb-footer-btn:not(:disabled):hover{background:var(--text-primary);color:var(--bg-base);border-color:var(--text-primary)}.sb-footer-btn:disabled{cursor:default;opacity:.4}.topbar{pointer-events:none;z-index:100;opacity:0;justify-content:center;align-items:center;height:40px;transition:opacity 1.2s;display:flex;position:fixed;top:0;left:0;right:0}.topbar--visible{opacity:1;pointer-events:all;transition:opacity .12s}.topbar-wordcount{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);text-transform:uppercase;white-space:nowrap;font-size:10px;position:absolute;left:50%;transform:translate(-50%)}.editor-shell{flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.editor-empty{color:var(--text-muted);flex:1;justify-content:center;align-items:center;font-size:14px;display:flex}.editor-body{scrollbar-width:thin;scrollbar-color:var(--border) transparent;flex:1;padding:80px 0 120px;position:relative;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 56px 100%);mask-image:linear-gradient(#0000 0,#000 56px,#000)}.editor-body::-webkit-scrollbar{width:4px}.editor-body::-webkit-scrollbar-track{background:0 0}.editor-body::-webkit-scrollbar-thumb{background:var(--border)}.tiptap-editor{max-width:680px;font-family:var(--font-body);color:var(--text-primary);margin:0 auto;padding:0 24px 0 60px;font-size:15px;line-height:1.7}.float-btn-wrap{z-index:10;align-items:flex-start;gap:8px;display:flex;position:absolute;left:calc(50% - 340px);transform:translateY(2px)}.float-btn{all:unset;cursor:pointer;width:22px;height:22px;color:var(--text-muted);border-radius:4px;justify-content:center;align-items:center;font-size:18px;font-weight:300;line-height:1;transition:color .15s,transform .15s;display:flex}.float-btn:hover{color:var(--text-secondary)}.float-btn--open{color:var(--text-secondary);transform:rotate(45deg)}.float-menu{background:var(--bg-toolbar);border:1px solid var(--border);border-radius:7px;flex-direction:column;min-width:150px;padding:4px;display:flex;box-shadow:0 4px 20px #00000080}.float-menu-item{all:unset;cursor:pointer;color:var(--text-secondary);font-size:13px;font-family:var(--font-ui);border-radius:5px;align-items:center;gap:10px;padding:7px 10px;transition:background .1s,color .1s;display:flex}.float-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.float-menu-item i{width:14px;color:var(--text-muted)}.ProseMirror{outline:none}.ProseMirror p{margin-bottom:.9em}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{color:var(--text-primary);margin:1.6em 0 .5em;font-weight:600;line-height:1.3}.ProseMirror h1{font-size:1.9em}.ProseMirror h2{font-size:1.45em}.ProseMirror h3{font-size:1.15em}.ProseMirror strong{font-weight:600}.ProseMirror em{font-style:italic}.ProseMirror u{text-decoration:underline}.ProseMirror s{color:var(--text-muted);text-decoration:line-through}.ProseMirror blockquote{border-left:3px solid var(--border);color:var(--text-secondary);margin:1em 0;padding-left:1em}.ProseMirror pre{border:1px solid var(--border);font-family:var(--font-mono);color:#a5f3fc;background:#0d0d0f;border-radius:7px;margin:1em 0;padding:14px 18px;font-size:13px;overflow-x:auto}.ProseMirror code{font-family:var(--font-mono);color:#a5f3fc;background:#1e1e23;border-radius:4px;padding:2px 5px;font-size:.88em}.ProseMirror img{border:1px solid var(--border);border-radius:7px;max-width:100%;margin:1em 0}.ProseMirror table{border-collapse:collapse;width:100%;margin:1em 0;font-size:14px}.ProseMirror th,.ProseMirror td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 12px}.ProseMirror th{background:var(--bg-toolbar);color:var(--text-primary);font-weight:600}.ProseMirror td{color:var(--text-secondary)}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--text-muted);pointer-events:none;float:left;height:0}.ProseMirror hr{border:none;border-top:1px solid var(--border);margin:1.5em 0}.img-zone-wrap{flex-direction:column;gap:0;margin:1em 0;display:flex;position:relative}.img-zone-controls{z-index:10;align-items:center;gap:4px;display:flex;position:absolute;top:-10px;right:-10px}.img-zone-delete{all:unset;cursor:pointer;width:20px;height:20px;color:var(--text-muted);background:var(--bg-base);border:1px solid var(--border);justify-content:center;align-items:center;font-size:14px;transition:color .15s,border-color .15s;display:flex}.img-zone-delete:hover{color:var(--danger);border-color:var(--danger)}.img-zone-paste{all:unset;cursor:pointer;height:20px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);background:var(--bg-base);border:1px solid var(--border);align-items:center;padding:0 8px;font-size:9px;transition:color .15s;display:flex}.img-zone-paste:hover{color:var(--text-secondary)}.img-upload-zone{aspect-ratio:16/9;border:1px dashed var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;gap:8px;width:100%;transition:border-color .15s,background .15s;display:flex;position:relative;overflow:hidden}.img-zone-preview{object-fit:cover;object-position:top;cursor:pointer;width:100%;height:100%;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.img-upload-zone:hover,.img-upload-zone--drag{border-color:var(--text-muted);background:var(--bg-hover)}.img-upload-zone--uploading{cursor:default;opacity:.6}.img-upload-zone__icon{color:var(--text-muted);font-size:18px}.img-upload-zone__label{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);font-size:10px}.img-upload-zone__error{font-family:var(--font-mono);color:var(--danger);font-size:9px}.img-zone-note-wrap{border:1px solid var(--border);border-top:none}.img-zone-note-wrap:focus-within{border-color:var(--text-muted)}.img-zone-note{all:unset;box-sizing:border-box;width:100%;font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-secondary);caret-color:var(--text-primary);padding:7px 12px;font-size:10px;transition:color .15s;display:block}.img-zone-note::placeholder{color:var(--text-muted)}.img-zone-note:focus{color:var(--text-primary)}.img-zone-footer{padding:4px 0 0}.bubble-menu{background:var(--bg-toolbar);border:1px solid var(--border);border-radius:7px;align-items:center;gap:1px;padding:4px;display:flex;box-shadow:0 4px 16px #00000080}.bubble-menu button{all:unset;cursor:pointer;width:28px;height:28px;color:var(--text-secondary);font-size:12px;font-weight:600;font-family:var(--font-ui);border-radius:5px;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.bubble-menu button:hover{background:var(--bg-hover);color:var(--text-primary)}.bubble-menu button.active{background:var(--bg-active);color:var(--accent)}.bubble-divider{background:var(--border);flex-shrink:0;width:1px;height:16px;margin:0 3px}.sb-auth-role{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:8px}.lm-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}[data-theme=light] .lm-overlay{background:#00000040}.lm{background:var(--bg-base);border:1px solid var(--border);flex-direction:column;width:320px;display:flex}.lm-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:12px 14px 10px;display:flex}.lm-title{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-primary);font-size:10px;font-weight:400}.lm-close{all:unset;cursor:pointer;color:var(--text-muted);font-size:16px;line-height:1;transition:color .15s}.lm-close:hover{color:var(--text-primary)}.lm-body{flex-direction:column;gap:14px;padding:20px 14px 14px;display:flex}.lm-field{flex-direction:column;gap:5px;display:flex}.lm-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:9px}.lm-input{background:var(--bg-toolbar);border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-primary);width:100%;caret-color:var(--text-primary);outline:none;padding:7px 9px;font-size:11px;transition:border-color .15s,background .15s}.lm-input::placeholder{color:var(--text-muted);letter-spacing:.1em}.lm-input:focus{border-color:var(--text-primary);background:var(--bg-hover)}.lm-input--error{border-color:var(--danger)}.lm-input:disabled{opacity:.5;cursor:not-allowed}.lm-error{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--danger);min-height:1em;font-size:9px}.lm-footer{border-top:1px solid var(--border);padding-top:4px}.lm-submit{all:unset;width:100%;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-primary);border:1px solid var(--text-primary);cursor:pointer;box-sizing:border-box;justify-content:center;align-items:center;gap:8px;margin-top:6px;padding:9px 0;font-size:10px;transition:background .15s,color .15s;display:flex}.lm-submit:hover:not(:disabled){background:var(--text-primary);color:var(--bg-base)}.lm-submit:disabled{opacity:.4;cursor:not-allowed}.lm-spinner{border:1px solid var(--text-muted);border-top-color:var(--text-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:.7s linear infinite lm-spin}@keyframes lm-spin{to{transform:rotate(360deg)}}.sb-airport-confirm{border:1px solid var(--border);flex-direction:column;gap:4px;margin-bottom:2px;padding:8px 10px;display:flex}.sb-airport-confirm--warn{border-color:var(--danger)}.sb-airport-confirm-row{align-items:baseline;gap:8px;display:flex}.sb-airport-confirm-key{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;width:28px;font-size:8px}.sb-airport-confirm-val{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.sb-airport-confirm-hint{font-family:var(--font-mono);letter-spacing:.08em;color:var(--danger);margin-top:2px;font-size:8px}.ap-confirm-card{background:var(--bg-base);border:1px solid var(--border);z-index:210;flex-direction:column;width:260px;display:flex;position:fixed;top:80px;left:248px;box-shadow:4px 4px 24px #0000004d}.ap-confirm-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 12px 8px;display:flex}.ap-confirm-title{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-primary);font-size:13px;font-weight:400}.ap-confirm-status{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;border:1px solid;padding:2px 6px;font-size:8px}.ap-confirm-status--ok{color:var(--accent);border-color:var(--accent)}.ap-confirm-status--warn{color:var(--danger);border-color:var(--danger)}.ap-confirm-body{flex-direction:column;gap:5px;padding:10px 12px;display:flex}.ap-confirm-row{align-items:baseline;gap:10px;display:flex}.ap-confirm-key{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;width:44px;font-size:8px}.ap-confirm-val{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.ap-confirm-hint{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-secondary);font-size:10px;line-height:1.5}.ap-confirm-footer{border-top:1px solid var(--border);gap:6px;padding:8px 12px 10px;display:flex}.ap-confirm-btn{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border-radius:0;flex:1;padding:6px 0;font-size:9px;transition:background .15s,color .15s,border-color .15s}.ap-confirm-btn--cancel{border:1px solid var(--border);color:var(--text-muted);background:0 0}.ap-confirm-btn--cancel:hover{border-color:var(--text-muted);color:var(--text-secondary)}.ap-confirm-btn--submit{border:1.5px solid var(--text-primary);color:var(--text-primary);background:0 0}.ap-confirm-btn--submit:hover{background:var(--text-primary);color:var(--bg-base)}.ap-confirm-btn--submit:disabled{opacity:.4;cursor:not-allowed}.topbar-breadcrumb{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase;white-space:nowrap;font-size:10px;position:absolute;top:50%;right:20px;transform:translateY(-50%)}.topbar-info-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap;font-size:8px;transition:color .15s;position:absolute;top:calc(50% + 14px);right:20px}.topbar-info-btn:hover{color:var(--text-secondary)}.ip-card{background:var(--bg-base);border:1px solid var(--border);z-index:300;flex-direction:column;width:240px;display:flex;position:fixed;top:52px;right:20px}.ip-card-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 12px 8px;display:flex}.ip-card-title{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-primary);font-size:10px}.ip-pin{all:unset;cursor:pointer;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;transition:color .15s;display:flex}.ip-pin:hover{color:var(--text-secondary)}.ip-pin--active{color:var(--text-primary)}.ip-card-body{flex-direction:column;gap:5px;padding:10px 12px;display:flex}.ip-loading{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);font-size:10px}.ip-hint{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);margin-top:4px;font-size:9px;display:block}.ip-details{flex-direction:column;gap:5px;display:flex}.ip-detail-row{align-items:baseline;gap:10px;display:flex}.ip-detail-key{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);flex-shrink:0;width:44px;font-size:8px}.ip-detail-val{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-primary);white-space:normal;word-break:break-word;font-size:11px}.ip-card-actions{flex-direction:column;gap:6px;padding:8px 12px 10px;display:flex}.ip-action-btn,a.ip-action-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);border:1.5px solid var(--text-primary);text-align:center;padding:6px 10px;font-size:10px;transition:background .15s,color .15s}.ip-action-btn:not(:disabled):hover{background:var(--text-primary);color:var(--bg-base)}.ip-action-btn:disabled{cursor:default;opacity:.4}.float-menu-item--disabled{opacity:.3;cursor:not-allowed}.block-card{border:1px solid var(--border);border-left:3px solid var(--text-muted);background:var(--bg-toolbar);margin:1em 0}.block-card__header{border-bottom:1px solid var(--border);align-items:center;padding:0 10px 0 12px;display:flex}.block-card__title{all:unset;font-family:var(--font-body);color:var(--text-primary);caret-color:var(--text-primary);flex:1;padding:9px 0;font-size:14px;font-weight:600}.block-card__title::placeholder{color:var(--text-muted)}.block-card__delete{all:unset;cursor:pointer;color:var(--text-muted);padding:4px;font-size:14px;line-height:1;transition:color .15s}.block-card__delete:hover{color:var(--danger)}.block-card__body{all:unset;box-sizing:border-box;width:100%;font-family:var(--font-body);color:var(--text-primary);resize:none;caret-color:var(--text-primary);padding:10px 12px;font-size:14px;line-height:1.6;display:block;overflow:hidden}.block-card__body::placeholder{color:var(--text-muted)}.note-card{border:1px dashed var(--text-muted);margin:1em 0}.note-card__label{border-bottom:1px dashed var(--text-muted);justify-content:space-between;align-items:center;padding:6px 10px 6px 12px;display:flex}.note-card__label span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);-webkit-user-select:none;user-select:none;font-size:9px}.note-card__delete{all:unset;cursor:pointer;color:var(--text-muted);padding:2px 4px;font-size:14px;line-height:1;transition:color .15s}.note-card__delete:hover{color:var(--danger)}.note-card__body{all:unset;box-sizing:border-box;width:100%;font-family:var(--font-mono);color:var(--text-secondary);resize:none;caret-color:var(--text-primary);padding:10px 12px;font-size:12px;line-height:1.7;display:block;overflow:hidden}.note-card__body::placeholder{color:var(--text-muted)}.note-card__body:focus{color:var(--text-primary)}.editor-lock-overlay{z-index:50;cursor:not-allowed;pointer-events:none;justify-content:flex-end;align-items:flex-end;padding:16px 20px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.editor-lock-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);background:var(--bg-base);pointer-events:none;padding:3px 8px;font-size:9px}.editor-lock{z-index:50;cursor:default;pointer-events:none;justify-content:flex-end;align-items:flex-end;padding:16px 20px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.editor-lock__label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);background:var(--bg-base);padding:3px 8px;font-size:9px}.sb-unauth{padding:16px}.sb-unauth-msg{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-muted);font-size:10px;line-height:1.6}.editor-unauth{flex:1;justify-content:center;align-items:center;height:100%;display:flex}.editor-unauth-msg{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);text-align:center;font-size:11px}.config-page{background:var(--bg-base);z-index:500;flex-direction:column;display:flex;position:fixed;top:0;right:0;bottom:0;left:0;overflow-y:auto}.config-shell{flex-direction:column;gap:0;width:100%;max-width:900px;margin:0 auto;padding:40px 32px 80px;display:flex}.config-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;display:flex}.config-header-left{align-items:center;gap:16px;display:flex}.config-back{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);font-size:10px;transition:color .15s}.config-back:hover{color:var(--text-primary)}.config-title{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-primary);font-size:12px}.config-tabs{border:1px solid var(--border);gap:0;display:flex}.config-tab{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);padding:5px 14px;font-size:9px;transition:background .15s,color .15s}.config-tab+.config-tab{border-left:1px solid var(--border)}.config-tab:hover{color:var(--text-secondary)}.config-tab--active{color:var(--text-primary);background:var(--bg-hover)}.config-section{flex-direction:column;gap:24px;display:flex}.config-empty{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-muted);font-size:10px}.config-error{font-family:var(--font-mono);letter-spacing:.08em;color:var(--danger);font-size:10px}.config-table{border-collapse:collapse;width:100%;font-family:var(--font-mono);font-size:11px}.config-table th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);border-bottom:1px solid var(--border);padding:0 12px 8px 0;font-size:8px}.config-table td{border-bottom:1px solid var(--border);color:var(--text-primary);vertical-align:middle;padding:10px 12px 10px 0}.config-row--self td{opacity:.5}.config-cell--name{min-width:120px;font-weight:500}.config-cell--date{color:var(--text-muted);white-space:nowrap}.config-cell--ua{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:200px;font-size:10px;overflow:hidden}.config-role-select{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-primary);border:1px solid var(--border);background:var(--bg-base);padding:3px 6px;font-size:10px;transition:border-color .15s}.config-role-select:hover{border-color:var(--text-muted)}.config-role-select:focus{border-color:var(--text-primary);outline:none}.config-delete-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);border:1px solid var(--border);padding:3px 8px;font-size:9px;transition:color .15s,border-color .15s}.config-delete-btn:hover{color:var(--danger);border-color:var(--danger)}.config-add-wrap{padding-top:8px}.config-add-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:10px;transition:color .15s}.config-add-btn:hover{color:var(--text-primary)}.config-add-form{border:1px solid var(--border);flex-direction:column;gap:14px;padding:16px;display:flex}.config-form-row{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.config-field{flex-direction:column;gap:5px;display:flex}.config-label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);font-size:8px}.config-label-hint{text-transform:none;letter-spacing:0;opacity:.6}.config-input{all:unset;font-family:var(--font-mono);color:var(--text-primary);border:1px solid var(--border);background:var(--bg-base);min-width:160px;caret-color:var(--text-primary);padding:5px 8px;font-size:11px;transition:border-color .15s}.config-input:focus{border-color:var(--text-primary)}.config-form-actions{gap:8px;display:flex}.config-btn{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-primary);border:1px solid var(--text-primary);padding:5px 14px;font-size:9px;transition:background .15s,color .15s}.config-btn:hover:not(:disabled){background:var(--text-primary);color:var(--bg-base)}.config-btn:disabled{opacity:.4;cursor:not-allowed}.config-btn--cancel{color:var(--text-muted);border-color:var(--border)}.config-btn--cancel:hover{color:var(--text-secondary);border-color:var(--text-muted);background:0 0}.config-secret-reveal{border:1px solid var(--border);flex-direction:column;gap:10px;padding:16px;display:flex}.config-secret-label{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:9px}.config-secret-value{font-family:var(--font-mono);letter-spacing:.08em;color:var(--text-primary);background:var(--bg-toolbar);border:1px solid var(--border);word-break:break-all;-webkit-user-select:all;user-select:all;padding:10px 12px;font-size:12px}[data-mobile=true] .sb,[data-mobile=true] .app-layout,[data-mobile=true] .app-main{height:calc(var(--vh,1vh) * 100)}.sb--mobile{height:calc(var(--vh,1vh) * 100);z-index:300;box-shadow:4px 0 32px #0006}.sb-overlay{z-index:299;-webkit-tap-highlight-color:transparent;background:#00000080;position:fixed;top:0;right:0;bottom:0;left:0}.sb-toggle--mobile{all:unset;z-index:298;cursor:pointer;width:56px;height:56px;color:var(--text-muted);-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;display:flex;position:fixed;top:0;left:0}.sb-toggle--mobile:hover{color:var(--text-secondary)}.sb-toggle--mobile svg{width:16px;height:11px}.topbar--mobile{background:var(--bg-base);border-bottom:1px solid var(--border);height:56px;opacity:1!important;pointer-events:all!important;transition:none!important}[data-mobile=true] .topbar-breadcrumb{font-size:10px;top:14px;right:16px;transform:none}[data-mobile=true] .topbar-wordcount{font-size:10px;top:50%;left:60px;transform:translateY(-50%)}.topbar-info-btn--mobile{all:unset;cursor:pointer;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:9px;position:absolute;bottom:12px;right:16px}[data-mobile=true] .editor-body{padding-top:56px}[data-mobile=true] .tiptap-editor{-webkit-text-size-adjust:100%;padding:0 16px}[data-mobile=true] .float-btn{width:32px;height:32px}
