*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:IBM Plex Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!visible{visibility:visible!important}.visible{visibility:visible}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-full{height:100%}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-center{justify-content:center}.border{border-width:1px}.italic{font-style:italic}.text-txt2{color:var(--txt2)}.placeholder-card::-moz-placeholder{color:var(--card)}.placeholder-card::placeholder{color:var(--card)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}[data-theme=dark]{--bg: #0B0E0C;--card: #0F1510;--card-h: #131A14;--border: #1B2A1D;--border-h: #8BF18B;--accent: #8BF18B;--accent2: #5ECFCF;--accent3: #C9A84C;--accent4: #B07FD0;--accent5: #5A9FFF;--txt: #B8C4BA;--txt2: #4C6450;--txt3: #2A3C2C;--glow: rgba(139, 241, 139, .07);--glow-h: rgba(139, 241, 139, .16);--dot: rgba(139, 241, 139, .08);--line: rgba(139, 241, 139, .028);--head-bg: rgba(11, 14, 12, .95);--inp: #0C110D;--inp-bdr: #1B2A1D;--sb-thumb: #1E2E20;--code-bg: #080C09;--sel-bg: #0F1510;--sel-bdr: #1B2A1D;--sk-cmt: #3A5240;--sk-str: #86C88A;--sk-num: #C9A84C;--sk-kw: #8BF18B;--sk-type: #5ECFCF;--sk-fn: #B07FD0;--sk-var: #5A9FFF;--sk-op: #4C6450;--sk-pct: #3A5240;--acc-txt: var(--txt)}[data-theme=light]{--bg: #F2F4EF;--card: #FFFFFF;--card-h: #F7FAF5;--border: #DDE3D8;--border-h: #4F8CFF;--accent: #4F8CFF;--accent2: #00A3A3;--accent3: #B8860B;--accent4: #7C3FAF;--accent5: #4F8CFF;--txt: #242D25;--txt2: #7A8A7C;--txt3: #C2CCC4;--glow: rgba(79, 140, 255, .06);--glow-h: rgba(79, 140, 255, .16);--dot: rgba(79, 140, 255, .08);--line: rgba(79, 140, 255, .03);--head-bg: rgba(242, 244, 239, .95);--inp: #FFFFFF;--inp-bdr: #DDE3D8;--sb-thumb: #C5CEC7;--code-bg: #F5F7F2;--sel-bg: #FFFFFF;--sel-bdr: #DDE3D8;--sk-cmt: #9AA89C;--sk-str: #1F6B1F;--sk-num: #B8860B;--sk-kw: #3A7A3A;--sk-type: #00A3A3;--sk-fn: #7C3FAF;--sk-var: #4F8CFF;--sk-op: #8A9490;--sk-pct: #9AA89C;--acc-txt: var(--txt)}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-normal-400.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-normal-500.woff2) format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/inter-normal-600.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-400.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-500.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/ibm-plex-mono-normal-600.woff2) format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-italic-400.woff2) format("woff2")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;overflow:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:13px;line-height:1.55;-webkit-font-smoothing:antialiased;color:var(--txt);background:var(--bg);transition:color .22s,background .22s}#root{height:100%}.mono{font-family:IBM Plex Mono,Courier New,monospace}button{font-family:inherit}.cv-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-color:var(--bg);background-image:radial-gradient(circle,var(--dot) 1.2px,transparent 1.2px),linear-gradient(var(--line) .5px,transparent .5px);background-size:22px 22px,110px 110px;background-position:0 0,0 0;transition:background .22s}.app-root{position:relative;z-index:1;height:100vh;display:flex;flex-direction:column;overflow:hidden}.toast{position:fixed;top:16px;right:16px;z-index:100;padding:8px 14px;border-radius:7px;background:var(--card);border:1px solid var(--border-h);color:var(--accent);font-size:11px;box-shadow:0 6px 24px var(--glow-h);opacity:0;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease;pointer-events:none}.toast-visible{opacity:1;transform:translateY(0)}.paste-status{position:absolute;bottom:18px;left:50%;transform:translate(-50%);z-index:40;display:flex;align-items:center;gap:8px;padding:7px 13px;border-radius:100px;background:var(--card);border:1px solid var(--border-h);color:var(--accent);font-size:11px;box-shadow:0 6px 24px var(--glow-h);pointer-events:none;opacity:0;transform:translate(-50%) translateY(8px);transition:opacity .18s ease,transform .18s ease}.paste-status[aria-busy=true]{opacity:1;transform:translate(-50%) translateY(0)}.paste-status-spinner{width:12px;height:12px;border:1.5px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.app-body{flex:1;display:flex;overflow:hidden}.main-area{flex:1;overflow-y:auto;padding-bottom:32px;position:relative}.cv-header{flex-shrink:0;z-index:50;background:var(--head-bg);border-bottom:1px solid var(--border);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.hdr-row1{display:flex;align-items:center;gap:10px;padding:10px 16px 8px}.hdr-row2{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 16px 9px}.logo{display:flex;align-items:flex-start;gap:9px;flex-shrink:0}.logo-mark{width:30px;height:30px;border:1.5px solid var(--accent);border-radius:5px;display:flex;align-items:center;justify-content:center;font-size:9.5px;font-weight:600;letter-spacing:.5px;color:var(--accent);flex-shrink:0;transition:box-shadow .2s}.logo-mark:hover{box-shadow:0 0 8px var(--glow-h)}.logo-wordmark{height:22px;width:auto;display:block;flex-shrink:0}.logo-text{display:flex;flex-direction:column;align-items:flex-start}.logo-name{font-size:13px;font-weight:600;color:var(--txt);letter-spacing:-.01em;line-height:1.3}.logo-sub{font-size:9px;color:var(--txt2);letter-spacing:.015em;margin-left:3px}.search-wrap{flex:1;display:flex;align-items:center;gap:6px;background:var(--inp);border:1px solid var(--inp-bdr);border-radius:7px;padding:0 10px;transition:border-color .15s,box-shadow .15s}.search-wrap:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--glow)}.search-icon{color:var(--txt2);font-size:16px;flex-shrink:0;line-height:1}.search-input{flex:1;background:transparent;border:none;outline:none;font-family:Inter,sans-serif;font-size:12.5px;color:var(--txt);padding:7px 0}.search-input::-moz-placeholder{color:var(--txt2)}.search-input::placeholder{color:var(--txt2)}.search-clear{background:transparent;border:none;color:var(--txt2);font-size:17px;cursor:pointer;padding:0 2px;line-height:1;transition:color .15s}.search-clear:hover{color:var(--txt)}.icon-btn{background:transparent;border:1px solid var(--border);border-radius:5px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;color:var(--txt2);font-size:13px;cursor:pointer;flex-shrink:0;transition:border-color .15s,color .15s,box-shadow .15s}.icon-btn:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 6px var(--glow)}.icon-btn-danger:hover{border-color:#ff6b6b;color:#ff6b6b;box-shadow:0 0 6px #ff6b6b40}.offline-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:100px;border:1px solid var(--border);color:var(--accent3);font-size:10.5px;font-weight:500;background:var(--card);flex-shrink:0;transition:opacity .18s ease}.offline-badge-label{font-family:IBM Plex Mono,Courier New,monospace}.manifesto-btn{background:transparent;border:1px solid var(--border);border-radius:5px;padding:0 10px;height:30px;font-size:10px;font-weight:500;letter-spacing:.04em;color:var(--txt2);cursor:pointer;flex-shrink:0;transition:border-color .15s,color .15s,box-shadow .15s}.manifesto-btn:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 8px var(--glow)}.base-backdrop{position:fixed;inset:0;z-index:200;background:#0000009e;display:flex;align-items:center;justify-content:center;padding:20px;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);animation:baseFadeIn .18s ease forwards}.base-backdrop.closing{animation:baseFadeOut .15s ease forwards}.base-modal{width:min(90vw,520px);max-height:min(86vh,720px);background:var(--card);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 60px #00000073,0 0 0 1px var(--border);overflow:hidden;display:flex;flex-direction:column;animation:baseScaleIn .2s ease forwards;background-image:radial-gradient(circle,var(--dot) 1.2px,transparent 1.2px),linear-gradient(var(--line) .5px,transparent .5px);background-size:22px 22px,110px 110px;background-position:0 0,0 0}.base-modal.closing{animation:baseScaleOut .16s ease forwards}.base-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 22px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.base-modal-title{font-size:16px;font-weight:600;color:var(--txt);letter-spacing:-.01em;margin-bottom:3px}.base-modal-subtitle{font-size:12px;color:var(--txt2);font-style:italic}.base-modal-close{background:transparent;border:1px solid var(--border);border-radius:5px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--txt2);cursor:pointer;flex-shrink:0;transition:border-color .15s,color .15s,box-shadow .15s}.base-modal-close:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 0 8px var(--glow)}.base-modal-body{flex:1;overflow-y:auto}.base-modal-footer{flex-shrink:0;padding:16px 22px;border-top:1px solid var(--border)}@keyframes baseFadeIn{0%{opacity:0}to{opacity:1}}@keyframes baseFadeOut{0%{opacity:1}to{opacity:0}}@keyframes baseScaleIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes baseScaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.98)}}.manifesto-body{flex:1;overflow-y:auto;padding:22px 26px;font-size:13px;line-height:1.75;color:var(--txt)}.manifesto-body p{margin-bottom:14px}.manifesto-lead{font-size:14px;color:var(--accent);font-weight:500}.manifesto-highlight-text{font-size:15px;font-weight:600;color:var(--accent);padding:10px 14px;border-left:2px solid var(--accent);background:var(--glow);margin:18px 0}.manifesto-stats-block{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:16px;margin:24px 0 10px;border:1px solid var(--border);border-radius:8px;background:var(--glow)}.manifesto-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.manifesto-stat-num{font-family:IBM Plex Mono,Courier New,monospace;font-size:22px;font-weight:600;color:var(--accent);line-height:1}.manifesto-stat-label{font-size:10px;color:var(--txt2);text-transform:uppercase;letter-spacing:.06em}.manifesto-stat-total{grid-column:1 / -1;margin-top:6px;padding-top:10px;border-top:1px solid var(--border)}.manifesto-stat-total .manifesto-stat-label{font-size:11px;color:var(--accent);font-weight:600}.manifesto-footer{padding:16px 26px 22px;border-top:1px solid var(--border);text-align:center}.manifesto-footer p{font-size:11px;color:var(--txt2);margin-bottom:4px}.manifesto-footer-line{font-size:10.5px;color:var(--txt3);font-style:italic}.confirm-modal{width:min(90vw,360px);max-height:min(86vh,720px)}.confirm-modal .base-modal-body{padding:18px 22px 0}.confirm-msg{font-size:12px;line-height:1.6;color:var(--txt2)}.confirm-actions{display:flex;justify-content:flex-end;gap:8px}.confirm-btn{padding:6px 12px;border-radius:5px;font-size:11px;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--txt2);transition:border-color .15s,color .15s,background .15s}.confirm-btn:hover{border-color:var(--accent);color:var(--accent)}.confirm-btn-danger{border-color:#ff6b6b;color:#ff6b6b}.confirm-btn-danger:hover{background:#ff6b6b;color:#fff}.confirm-btn-cancel:hover{border-color:var(--txt);color:var(--txt)}.settings-modal{width:min(92vw,420px);max-height:min(86vh,640px)}.settings-modal .base-modal-body{padding:18px 22px;overflow-y:auto}.settings-section{margin-bottom:18px}.settings-section-title{font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--txt2);margin-bottom:10px;font-family:IBM Plex Mono,Courier New,monospace}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--border)}.settings-row:last-child{border-bottom:none}.settings-label{display:flex;flex-direction:column;gap:2px}.settings-label-title{font-size:12px;color:var(--txt)}.settings-label-sub{font-size:10.5px;color:var(--txt2)}.settings-value{font-size:10.5px;color:var(--txt2);font-family:IBM Plex Mono,Courier New,monospace}.settings-value.granted{color:var(--accent)}.settings-value.denied{color:#ff6b6b}.settings-btn{padding:5px 10px;border-radius:5px;border:1px solid var(--border);background:transparent;color:var(--txt2);font-size:11px;cursor:pointer;transition:border-color .15s,color .15s,background .15s;white-space:nowrap}.settings-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--glow)}.settings-btn:disabled{opacity:.5;cursor:not-allowed}.settings-btn-primary{border-color:var(--accent);color:var(--accent)}.settings-btn-primary:hover{background:var(--glow)}.settings-btn-danger{border-color:#ff6b6b;color:#ff6b6b}.settings-btn-danger:hover{background:#ff6b6b1a}.settings-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.update-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:5px;border:1px solid var(--accent);color:var(--accent);font-size:10.5px;font-family:IBM Plex Mono,Courier New,monospace}.filter-row{display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;flex-wrap:nowrap}.filter-row::-webkit-scrollbar{display:none}.fchip{padding:3px 10px;border-radius:100px;border:1px solid var(--border);font-size:10.5px;color:var(--txt2);background:transparent;cursor:pointer;white-space:nowrap;transition:border-color .15s,color .15s,background .15s}.fchip:hover{border-color:var(--accent);color:var(--txt)}.fchip.active{background:var(--glow);border-color:var(--accent);color:var(--accent)}.hdr-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.sort-sel{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--sel-bg);border:1px solid var(--sel-bdr);border-radius:5px;color:var(--txt2);font-size:10.5px;padding:4px 24px 4px 8px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%234C6450'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 7px center;transition:border-color .15s}.sort-sel:focus{outline:none;border-color:var(--accent)}[data-theme=light] .sort-sel{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%237A8A7C'/%3E%3C/svg%3E")}.stats{display:flex;align-items:center;gap:5px;font-size:10.5px;color:var(--txt2);white-space:nowrap}.sdot{opacity:.35}.stat-local{color:var(--accent);opacity:.8}.masonry{-moz-column-count:3;column-count:3;-moz-column-gap:14px;column-gap:14px;padding:18px 20px}@media(max-width:1060px){.masonry{-moz-column-count:2;column-count:2}}@media(max-width:660px){.masonry{-moz-column-count:1;column-count:1}}.cv-card{display:inline-block;width:100%;background:var(--card);border:1px solid var(--border);border-radius:9px;-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid;margin-bottom:14px;position:relative;overflow:hidden;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.card-added{animation:pulseAdded 2.2s ease forwards;border-color:var(--border-h);box-shadow:0 0 0 1px var(--border-h),0 0 24px var(--glow-h)}@keyframes pulseAdded{0%{box-shadow:0 0 0 1px var(--border-h),0 0 24px var(--glow-h)}50%{box-shadow:0 0 0 2px var(--border-h),0 0 36px var(--glow-h)}to{box-shadow:0 0 0 1px var(--border-h),0 0 24px var(--glow-h)}}.cv-card:hover{transform:translateY(-2px) scale(1.004);box-shadow:0 6px 24px var(--glow-h),0 0 0 1px var(--border-h);border-color:var(--border-h);z-index:2}.cv-card.dragging{opacity:.4;cursor:grabbing}.cv-card.drop-target{box-shadow:0 0 0 2px var(--accent),0 4px 14px var(--glow-h);border-color:var(--accent)}.cv-card.card-deleting,.cv-card.card-deleting:hover{opacity:0;transform:scale(.96);pointer-events:none;transition:opacity .25s ease,transform .25s ease,border-color .25s ease,box-shadow .25s ease}.card-stripe{position:absolute;left:0;top:0;bottom:0;width:2px;border-radius:0 1px 1px 0;opacity:.65;transition:opacity .15s}.cv-card:hover .card-stripe{opacity:1}.drag-handle{position:absolute;top:10px;left:9px;font-size:8.5px;color:var(--txt2);cursor:grab;opacity:0;transition:opacity .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:1px}.cv-card:hover .drag-handle{opacity:.45}.card-topright{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:5px;z-index:3}.card-badge{font-size:8.5px;font-weight:600;letter-spacing:.08em;padding:2px 5px;border-radius:3px;border:1px solid currentColor;opacity:.7}.lang-sel{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:var(--sel-bg);border:1px solid var(--sel-bdr);border-radius:4px;color:var(--txt2);font-size:9px;padding:2px 18px 2px 6px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%234C6450'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 5px center;opacity:0;pointer-events:none;transition:opacity .15s,border-color .15s;max-width:90px}.cv-card:hover .lang-sel,.lang-sel:focus{opacity:1;pointer-events:auto}[data-theme=light] .lang-sel{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='5'%3E%3Cpath d='M0 0l4 5 4-5z' fill='%237A8A7C'/%3E%3C/svg%3E")}.lang-sel:focus{outline:none;border-color:var(--accent)}.badge-text{color:var(--txt3)}.badge-code{color:var(--accent)}.badge-json{color:var(--accent2)}.badge-csv{color:var(--accent3)}.badge-markdown{color:var(--accent4)}.badge-url{color:var(--accent5)}.badge-image{color:var(--txt2)}.fav-btn{background:transparent;border:none;font-size:13px;cursor:pointer;color:var(--txt2);opacity:.4;line-height:1;padding:0;transition:color .15s,opacity .15s}.fav-btn:hover,.fav-btn.active{color:var(--accent3);opacity:1}.card-content{padding:36px 14px 4px 18px}.card-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 14px 9px 18px;border-top:1px solid var(--border);margin-top:6px}.card-tags{display:flex;gap:5px;flex-wrap:wrap;min-width:0}.card-tag{font-size:9.5px;color:var(--txt2);opacity:.7;white-space:nowrap}.card-meta{display:flex;align-items:center;gap:7px;flex-shrink:0}.card-ts,.copy-count{font-size:9.5px;color:var(--txt2)}.copy-hot{font-size:9.5px;color:var(--accent3)}.card-del-btn{display:inline-flex;align-items:center;gap:0;background:transparent;border:1px solid transparent;border-radius:4px;padding:1px 3px;color:var(--txt2);opacity:.45;cursor:pointer;line-height:1;max-width:22px;overflow:hidden;white-space:nowrap;transition:border-color .15s,color .15s,opacity .15s,gap .18s ease,padding .18s ease,max-width .18s ease}.card-del-btn:hover{opacity:.85;color:#ff6b6b;border-color:var(--border)}.card-del-btn.confirming{opacity:1;color:#ff6b6b;border-color:#ff6b6b;gap:5px;padding:1px 6px;max-width:88px}.card-del-label{opacity:0;max-width:0;overflow:hidden;font-size:9.5px;font-family:IBM Plex Mono,Courier New,monospace;transition:opacity .15s ease,max-width .18s ease}.card-del-btn.confirming .card-del-label{opacity:1;max-width:60px}.tc-body{padding:10px 12px;max-height:220px;overflow-y:auto}.tc-text{font-size:12.5px;color:var(--txt);line-height:1.68;white-space:pre-wrap;word-break:break-word;text-wrap:pretty}.tc-expand{background:transparent;border:none;color:var(--accent);font-size:10px;cursor:pointer;padding:4px 0 0;opacity:.7;font-family:IBM Plex Mono,monospace;transition:opacity .15s}.tc-expand:hover{opacity:1}.code-wrap,.card-panel{margin:-36px -14px -4px -18px}.code-topbar{display:flex;align-items:center;gap:8px;padding:8px 38px 7px 12px;border-bottom:1px solid var(--border);background:var(--code-bg)}.code-dots{display:flex;gap:4px;flex-shrink:0}.code-dots span{width:7px;height:7px;border-radius:50%;background:var(--border)}.code-langname{flex:1;min-width:0;font-size:9.5px;color:var(--txt2);text-transform:uppercase;letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.header-badge{flex-shrink:0;margin-left:4px}.code-copy{flex-shrink:0;background:transparent;border:1px solid var(--border);border-radius:4px;padding:2px 8px;font-size:9.5px;color:var(--txt2);cursor:pointer;transition:border-color .15s,color .15s;line-height:1.4}.code-copy:hover{border-color:var(--accent);color:var(--accent)}.code-scroll{max-height:210px;overflow-y:auto;overflow-x:auto}.code-pre{margin:0;padding:10px 12px;font-size:11.5px;line-height:1.72;background:var(--code-bg);white-space:pre;word-break:normal;-moz-tab-size:2;-o-tab-size:2;tab-size:2;color:var(--txt)}.tk-comment{color:var(--sk-cmt);font-style:italic}.tk-string{color:var(--sk-str)}.tk-number{color:var(--sk-num)}.tk-keyword{color:var(--sk-kw);font-weight:500}.tk-type{color:var(--sk-type)}.tk-function{color:var(--sk-fn)}.tk-variable{color:var(--sk-var)}.tk-operator{color:var(--sk-op)}.tk-punctuation{color:var(--sk-pct)}.json-wrap{background:var(--code-bg)}.json-pre{padding:10px 12px;margin:0;font-size:11px;line-height:1.72;background:var(--code-bg);color:var(--txt);white-space:pre;overflow-x:auto;max-height:220px;overflow-y:auto}.csv-scroll{overflow-x:auto;max-height:220px;overflow-y:auto;border-top:1px solid var(--border)}.csv-table{width:100%;min-width:-moz-max-content;min-width:max-content;border-collapse:collapse}.csv-table th,.csv-table td{text-align:left;padding:7px 12px;font-size:11px;border-bottom:1px solid var(--border);white-space:nowrap}.csv-table th{position:sticky;top:0;z-index:1;font-weight:600;letter-spacing:.04em;color:var(--accent3);background:var(--code-bg);text-transform:uppercase}.csv-table tbody tr:last-child td{border-bottom:none}.csv-table tbody tr:nth-child(2n) td{background:var(--glow)}.md-topbar{display:flex;gap:4px;padding:8px 12px 7px;border-bottom:1px solid var(--border);background:var(--code-bg)}.md-tabs{display:flex;gap:4px;flex-shrink:0}.md-tab{background:transparent;border:1px solid transparent;border-radius:4px;padding:2px 8px;font-size:9.5px;color:var(--txt2);cursor:pointer;font-family:IBM Plex Mono,monospace;transition:all .15s}.md-tab:hover{color:var(--txt)}.md-tab.active{border-color:var(--accent4);color:var(--accent4)}.md-rendered{padding:10px 12px;font-size:12.5px;line-height:1.68;color:var(--txt);max-height:240px;overflow-y:auto}.md-rendered h1,.md-rendered h2,.md-rendered h3{color:var(--txt)}.md-rendered h1{font-size:15.5px;font-weight:700;margin:0 0 8px}.md-rendered h2{font-size:13.5px;font-weight:600;margin:10px 0 5px}.md-rendered h3{font-size:12.5px;font-weight:600;margin:8px 0 4px}.md-rendered p{margin-bottom:6px}.md-rendered a{color:var(--accent5);text-decoration:none}.md-rendered a:hover{text-decoration:underline}.md-rendered ul,.md-rendered ol{padding-left:16px;margin-bottom:6px}.md-rendered li{margin-bottom:3px}.md-rendered li>ul,.md-rendered li>ol{margin-top:3px;margin-bottom:3px}.md-rendered blockquote{border-left:2px solid var(--accent4);padding-left:10px;color:var(--txt2);font-style:italic;margin:6px 0}.md-rendered hr{border:0;border-top:1px solid var(--border);margin:10px 0}.md-rendered code{background:var(--code-bg);border-radius:3px;padding:1px 4px;font-family:IBM Plex Mono,monospace;font-size:11px}.md-rendered pre{background:var(--code-bg);border-radius:5px;padding:8px 10px;margin:6px 0;font-size:11px;font-family:IBM Plex Mono,monospace;overflow-x:auto;white-space:pre}.md-pre-wrap{position:relative}.md-lang-badge{position:absolute;top:6px;right:8px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--txt2);background:var(--card);border:1px solid var(--border);border-radius:3px;padding:1px 5px;pointer-events:none;z-index:1}.md-rendered pre code{background:transparent;border-radius:0;padding:0;font-size:inherit}.md-table-wrap{overflow-x:auto;margin-bottom:6px}.md-rendered table{width:100%;border-collapse:collapse;font-size:11.5px}.md-rendered th,.md-rendered td{padding:5px 8px;border:1px solid var(--border);text-align:left}.md-rendered th{font-weight:600;background:var(--code-bg)}.md-rendered tbody tr:nth-child(2n){background:var(--glow)}.md-rendered input[type=checkbox]{pointer-events:none;accent-color:var(--accent4);opacity:.85;margin-right:6px;vertical-align:middle}.md-img-blocked{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px dashed var(--border);border-radius:4px;color:var(--txt2);font-size:11px}.md-rendered img{max-width:100%;max-height:220px;-o-object-fit:contain;object-fit:contain;display:block;border-radius:4px}.md-rendered del,.md-rendered s{color:var(--txt2);text-decoration:line-through}.md-rendered strong{font-weight:600}.md-rendered em{font-style:italic}.md-rendered .hljs-comment{color:var(--sk-cmt);font-style:italic}.md-rendered .hljs-string{color:var(--sk-str)}.md-rendered .hljs-number{color:var(--sk-num)}.md-rendered .hljs-keyword{color:var(--sk-kw)}.md-rendered .hljs-type,.md-rendered .hljs-class{color:var(--sk-type)}.md-rendered .hljs-function,.md-rendered .hljs-title.function_{color:var(--sk-fn)}.md-rendered .hljs-variable,.md-rendered .hljs-attr{color:var(--sk-var)}.md-rendered .hljs-operator,.md-rendered .hljs-punctuation{color:var(--sk-op)}.md-rendered .hljs-meta,.md-rendered .hljs-built_in{color:var(--sk-pct)}.md-rendered .hljs-literal,.md-rendered .hljs-params,.md-rendered .hljs-property{color:var(--txt)}.md-raw{padding:10px 12px;margin:0;font-size:11px;line-height:1.72;color:var(--txt2);white-space:pre-wrap;max-height:240px;overflow-y:auto;background:var(--code-bg)}.url-wrap{display:flex;flex-direction:column;gap:5px;padding:10px 12px;max-height:220px;overflow-y:auto}.url-row1{display:flex;align-items:center;gap:7px}.url-fav{width:26px;height:26px;border-radius:5px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:8.5px;font-weight:700;color:var(--accent5);background:var(--glow);flex-shrink:0}.url-domain{font-size:10.5px;color:var(--txt2);flex:1}.url-ext{color:var(--accent5);font-size:14px;text-decoration:none;opacity:.55;transition:opacity .15s}.url-ext:hover{opacity:1}.url-title{font-size:12.5px;font-weight:600;color:var(--txt);line-height:1.4}.url-desc{font-size:11.5px;color:var(--txt2);line-height:1.55;text-wrap:pretty}.img-ph{background:var(--code-bg);color:var(--txt)}.img-real{width:100%;max-height:280px;-o-object-fit:contain;object-fit:contain;display:block}.img-meta{display:flex;gap:10px;padding:7px 12px;font-size:10px;color:var(--txt2);border-top:1px solid var(--border)}.empty-state{display:flex;flex-direction:column;min-height:100%;padding:0;opacity:1;transform:translateY(0);transition:opacity .6s ease,transform .6s ease}.empty-state.empty-fading{position:absolute;inset:0;z-index:1;opacity:0;transform:translateY(8px);pointer-events:none}.empty-state.empty-fading .placeholder-card{opacity:0}.placeholder-grid{padding-bottom:0}.placeholder-card{opacity:.62;filter:blur(.4px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.placeholder-card .card-content{display:flex;flex-direction:column;gap:5px}.ph-svg{width:100%;height:auto;display:block;margin-bottom:4px}.ph-svg.ph-album{width:72%;margin-left:auto;margin-right:auto}.ph-label{font-size:12.5px;color:var(--txt);opacity:.75}.ph-sub{font-size:11px;color:var(--txt2);line-height:1.55}.ph-code-block{font-size:11px;line-height:1.7;color:var(--txt);background:var(--code-bg);border-radius:5px;padding:10px 12px;margin-bottom:4px}.ph-coords{font-size:10px;color:var(--txt2);letter-spacing:.04em;margin-bottom:2px}.ph-soon{position:absolute;top:10px;right:10px;font-size:9px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--accent3);border:1px solid var(--accent3);border-radius:100px;padding:2px 7px;opacity:.85;pointer-events:none;z-index:2}.placeholder-quote .ph-quote-mark{font-size:42px;line-height:1;color:var(--accent4);opacity:.35;margin:-6px 0 -8px;font-family:Georgia,Times New Roman,serif}.placeholder-quote .ph-quote-content{font-size:14px;line-height:1.55;color:var(--txt);font-style:italic;opacity:.85;margin-bottom:8px}.placeholder-quote .ph-label{font-size:11.5px;opacity:.7}.empty-footer{margin-top:auto;text-align:center;padding:28px 20px 48px}.empty-footer-panels{position:relative;display:inline-block;min-width:220px;min-height:96px}.empty-footer-panel{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-family:IBM Plex Mono,Courier New,monospace;font-size:11px;line-height:1.65;color:var(--txt2);text-shadow:0 0 18px var(--glow-h);opacity:0;transform:translateY(4px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}.empty-footer-panel.is-visible{opacity:1;transform:translateY(0)}.empty-footer-cta{color:var(--accent);opacity:.9;margin-top:4px}.empty-search{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100%;padding:40px 20px;text-align:center}.empty-search .empty-glyph{font-size:28px;color:var(--accent);margin-bottom:10px;opacity:.8}.empty-search .empty-msg{font-size:13.5px;font-weight:500;color:var(--txt);margin-bottom:6px;max-width:360px}.empty-search .empty-sub{font-size:11.5px;color:var(--txt2);max-width:320px}.empty-search .empty-glyph,.empty-search .empty-msg,.empty-search .empty-sub{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.empty-search.empty-fading .empty-glyph,.empty-search.empty-fading .empty-msg,.empty-search.empty-fading .empty-sub{opacity:0;transform:translateY(6px)}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--sb-thumb);border-radius:3px}*{scrollbar-width:thin;scrollbar-color:var(--sb-thumb) transparent}@keyframes fadeUp{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.card-appear{animation:fadeUp .18s ease both}.card-first-added{animation:firstCardAdded .4s ease both}@keyframes firstCardAdded{0%{opacity:0;transform:translateY(4px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.cv-bg-pulse:after{content:"";position:absolute;inset:0;background-image:radial-gradient(circle,var(--accent) 1.2px,transparent 1.2px),linear-gradient(var(--border-h) .5px,transparent .5px);background-size:22px 22px,110px 110px;background-position:0 0,0 0;opacity:0;pointer-events:none;animation:bgPulse .8s ease forwards;mask-image:radial-gradient(circle at center,black 0%,transparent 70%);-webkit-mask-image:radial-gradient(circle at center,black 0%,transparent 70%)}@keyframes bgPulse{0%{opacity:0}45%{opacity:.32}to{opacity:0}}@media(max-width:660px){.hdr-row1{flex-wrap:wrap;gap:8px}.hdr-row1 .search-wrap{order:3;flex-basis:100%}.offline-badge-label{display:none}.hdr-row2{flex-wrap:wrap;gap:8px;padding-top:6px}.hdr-row2 .filter-row{flex:1 1 100%;min-width:0}.hdr-row2 .hdr-right{flex:1 1 100%;justify-content:space-between}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
