:root{color-scheme:dark;--bg:#07111f;--surface:#0d1b2a;--surface-2:#13263a;--border:#25415d;--text:#eff6ff;--muted:#9fb0c2;--accent:#60a5fa;--accent-hover:#7dd3fc;--accent-cyan:#22d3ee;--accent-soft:color-mix(in srgb,var(--accent) 12%,transparent);--focus-ring:color-mix(in srgb,var(--accent) 38%,transparent);--danger:#f87171;--ok:#34d399;--editor-bg:#07111f;--shadow:0 8px 24px rgba(0,0,0,.28);--radius:10px;--mono:var(--font-geist-mono),ui-monospace,SFMono-Regular,monospace;--sans:var(--font-geist-sans),system-ui,sans-serif}:root[data-theme=light]{color-scheme:light;--bg:#f7fafc;--surface:#fff;--surface-2:#edf5f8;--border:#d8e5ec;--text:#102235;--muted:#5d6f7f;--accent:#123b70;--accent-hover:#082b55;--accent-cyan:#08a8c7;--accent-soft:color-mix(in srgb,var(--accent) 9%,transparent);--focus-ring:color-mix(in srgb,var(--accent) 28%,transparent);--danger:#dc2626;--ok:#059669;--editor-bg:#fff;--shadow:0 8px 24px rgba(8,43,85,.09)}*{box-sizing:border-box}.material-symbols-rounded{font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24;line-height:1}#root,body,html{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);letter-spacing:-.006em;line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom)}button,input,select,textarea{font:inherit}input[type=range]{accent-color:var(--accent-cyan)}input[type=range]:focus-visible{outline-color:var(--accent-cyan);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-cyan) 28%,transparent)}:where(a,button,input,textarea,select):focus-visible{outline:2px solid var(--accent);outline-offset:2px;box-shadow:0 0 0 4px var(--focus-ring)}a{color:var(--accent-hover);text-decoration:none}.login-page{position:relative;display:grid;min-height:calc(100dvh - 70px);overflow:hidden;place-items:center;isolation:isolate;padding:4.5rem 1.25rem;background:linear-gradient(145deg,color-mix(in srgb,var(--accent-cyan) 5%,var(--bg)),var(--bg) 48%,color-mix(in srgb,var(--accent) 7%,var(--bg)))}.login-page:before{z-index:-2;width:min(70vw,880px);height:min(70vw,880px);border:1px solid color-mix(in srgb,var(--accent-cyan) 12%,transparent);content:""}.login-orb,.login-page:before{position:absolute;border-radius:50%}.login-orb{z-index:-1;filter:blur(2px);pointer-events:none}.login-orb-one{top:-11rem;right:-8rem;width:28rem;height:28rem;background:color-mix(in srgb,var(--accent-cyan) 9%,transparent)}.login-orb-two{bottom:-14rem;left:-9rem;width:34rem;height:34rem;background:color-mix(in srgb,var(--accent) 8%,transparent)}.login-tool{position:absolute;z-index:-1;display:grid;width:54px;height:54px;place-items:center;border:1px solid color-mix(in srgb,var(--border) 70%,transparent);border-radius:16px;background:color-mix(in srgb,var(--surface) 70%,transparent);color:color-mix(in srgb,var(--accent) 65%,var(--muted));box-shadow:var(--shadow);opacity:.6;transform:rotate(var(--tool-rotate,0deg));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.login-tool span{font-size:1.45rem}.login-tool-json{top:20%;left:14%;--tool-rotate:-9deg}.login-tool-image{top:24%;right:13%;--tool-rotate:8deg}.login-tool-pdf{bottom:18%;left:18%;--tool-rotate:7deg}.login-tool-qr{right:17%;bottom:16%;--tool-rotate:-8deg}:root[data-theme=light] .login-tool{box-shadow:0 12px 32px rgba(8,43,85,.07)}.login-card{position:relative;width:min(100%,460px);overflow:hidden;padding:2.55rem 2.4rem 2.2rem;border:1px solid color-mix(in srgb,var(--border) 88%,var(--accent-cyan));border-radius:26px;background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 28px 80px rgba(7,17,31,.18);-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px)}.login-card-accent{position:absolute;top:0;right:4rem;left:4rem;height:3px;border-radius:0 0 999px 999px;background:linear-gradient(90deg,var(--accent),var(--accent-cyan))}.login-brand{display:flex;width:100%;align-items:center;justify-content:center;gap:.75rem;color:var(--text);font-size:1.72rem;font-weight:780;letter-spacing:-.05em}.login-brand img{width:60px;height:60px;border-radius:14px;filter:drop-shadow(0 8px 16px color-mix(in srgb,var(--accent-cyan) 20%,transparent))}.login-brand strong{color:var(--accent-cyan)}.login-heading{padding:1.3rem 0 1.5rem;text-align:center}.login-heading p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.55}.google-login-button{display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1rem;border:1px solid #e4e8ee;border-radius:999px;background:#fff;color:#123b70;font-weight:720;cursor:pointer;box-shadow:0 8px 24px rgba(26,42,66,.1);transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.google-login-button:hover:not(:disabled){border-color:#cfd8e6;background:#fbfdff;box-shadow:0 11px 28px rgba(26,42,66,.16);transform:translateY(-2px)}.google-login-button:disabled{cursor:wait;opacity:.7}.google-login-button svg{width:23px;height:23px;flex:0 0 auto}.login-error{margin:0 0 1rem;padding:.7rem .8rem;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger);font-size:.84rem}.google-login-button+.login-error{margin:.8rem 0 0}.login-assurance{display:flex;align-items:center;justify-content:center;gap:.35rem;margin-top:1rem;color:var(--muted);font-size:.72rem}.login-assurance .material-symbols-rounded{color:var(--ok);font-size:.95rem}.login-privacy{margin:1.55rem 0 0;padding-top:1.35rem;border-top:1px solid color-mix(in srgb,var(--border) 72%,transparent);color:var(--muted);font-size:.72rem;line-height:1.6;text-align:center}.login-privacy a{text-decoration:underline;text-underline-offset:2px}@media (max-width:520px){.login-page{min-height:calc(100dvh - 62px);padding:1.25rem 1rem}.login-card{padding:2rem 1.35rem 1.55rem;border-radius:22px}.login-brand{font-size:1.5rem}.login-brand img{width:54px;height:54px}.login-tool{width:44px;height:44px;border-radius:13px;opacity:.42}.login-tool-json{top:8%;left:4%}.login-tool-image{top:7%;right:3%}.login-tool-pdf{bottom:7%;left:4%}.login-tool-qr{right:4%;bottom:6%}}.app{display:flex;flex-direction:column;min-height:100%}.topbar{display:flex;align-items:center;gap:1.5rem;padding:calc(.75rem + env(safe-area-inset-top)) calc(1.25rem + env(safe-area-inset-right)) .75rem calc(1.25rem + env(safe-area-inset-left));border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:10;flex-wrap:nowrap}.pwa-status{z-index:100;top:0;left:50%;transform:translateX(-50%);padding:.45rem .9rem;border-radius:0 0 10px 10px;background:#123b70;font-size:.82rem}.pwa-install,.pwa-status{position:fixed;color:#fff;box-shadow:var(--shadow)}.pwa-install{z-index:50;right:calc(1rem + env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));display:flex;align-items:center;gap:.45rem;padding:.65rem .9rem;border:0;border-radius:999px;background:var(--accent);font:700 .86rem var(--sans);cursor:pointer}.pwa-install:hover{background:var(--accent-hover)}.pwa-toast{position:fixed;z-index:100;left:50%;bottom:calc(1rem + env(safe-area-inset-bottom));transform:translateX(-50%);display:flex;align-items:center;gap:.8rem;width:min(92vw,390px);padding:.75rem .8rem .75rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow);font-size:.88rem}.pwa-toast span{flex:1 1}.pwa-toast button{border:0;border-radius:8px;padding:.5rem .7rem;background:var(--accent);color:#fff;font-weight:700;cursor:pointer}.pwa-modal-backdrop{position:fixed;z-index:120;inset:0;display:grid;place-items:end center;padding:1rem;background:rgba(0,0,0,.58)}.pwa-modal{position:relative;width:min(100%,440px);padding:1.25rem 1.3rem calc(1.25rem + env(safe-area-inset-bottom));border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.pwa-modal h2{margin:0 2rem .5rem 0;font-size:1.2rem}.pwa-modal p{margin:0;color:var(--muted);line-height:1.65}.pwa-modal-close{position:absolute;top:.7rem;right:.8rem;border:0;background:transparent;color:var(--muted);font-size:1.5rem;cursor:pointer}.offline-page{max-width:540px;margin:12vh auto;text-align:center}.offline-page h1{font-size:2rem;margin:.75rem 0}.offline-page p{color:var(--muted);line-height:1.7;margin-bottom:1.5rem}.offline-icon{display:inline-grid;place-items:center;width:68px;height:68px;border-radius:18px;background:var(--surface-2);color:var(--accent);font-size:2rem}@media (display-mode:standalone){.site-footer{padding-bottom:calc(2.5rem + env(safe-area-inset-bottom))}}.mobile-bottom-nav,.native-home-screen{display:none}.native-launch{position:fixed;z-index:1000;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;overflow:hidden;background:radial-gradient(circle at 50% 42%,#fff 0,#f4fbfd 48%,#e6f5fa 100%);color:#102235;animation:native-launch-exit .38s ease-in 1.55s forwards}.native-launch-brand{position:relative;display:grid;width:148px;height:148px;place-items:center}.native-launch-brand img{position:relative;z-index:2;width:106px;height:106px;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(8,168,199,.2));animation:native-launch-mark .78s cubic-bezier(.2,.8,.2,1) both}.native-launch-orbit{position:absolute;inset:4px;border:2px solid rgba(8,168,199,.16);border-top-color:#08a8c7;border-radius:50%;animation:native-launch-orbit 1.35s cubic-bezier(.4,0,.2,1) .1s both}.native-launch-name{display:flex;margin-top:1.1rem;align-items:baseline;font-size:2rem;letter-spacing:-.045em;opacity:0;animation:native-launch-copy .55s ease-out .48s forwards}.native-launch-name span{font-weight:760}.native-launch-name strong{color:#123b70;font-weight:780}.native-launch p{margin:.35rem 0 0;color:#5d6f7f;font-size:.8rem;opacity:0;animation:native-launch-copy .5s ease-out .72s forwards}@keyframes native-launch-mark{0%{opacity:0;transform:scale(.62) rotate(-22deg)}65%{opacity:1;transform:scale(1.07) rotate(3deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes native-launch-orbit{0%{opacity:0;transform:scale(.55) rotate(-160deg)}35%{opacity:1}to{opacity:.75;transform:scale(1) rotate(210deg)}}@keyframes native-launch-copy{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes native-launch-exit{to{opacity:0;visibility:hidden;transform:scale(1.025)}}@media (prefers-reduced-motion:reduce){.native-launch,.native-launch *{animation-duration:.01ms!important;animation-delay:0ms!important}}.native-app body{overflow-x:hidden;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.native-app .app,.native-app .content{min-width:0;max-width:100vw;overflow-x:clip}.native-app .topbar{position:-webkit-sticky;position:sticky;padding-top:.75rem}.native-app .site-footer{display:none}.native-app .content{padding-bottom:calc(6rem + env(safe-area-inset-bottom))}.native-app a,.native-app button,.native-app input,.native-app select{touch-action:manipulation}.native-app .mobile-bottom-nav{position:fixed;z-index:80;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(5,1fr);padding:.4rem max(.35rem,env(safe-area-inset-right)) calc(.4rem + env(safe-area-inset-bottom)) max(.35rem,env(safe-area-inset-left));border-top:1px solid var(--border);background:color-mix(in srgb,var(--surface) 94%,transparent);box-shadow:0 -8px 24px rgba(0,0,0,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.native-app .mobile-bottom-nav a{display:flex;min-width:0;min-height:52px;flex-direction:column;align-items:center;justify-content:center;gap:.12rem;border-radius:10px;color:var(--muted);font-size:.68rem;font-weight:650}.native-app .mobile-bottom-nav a .material-symbols-rounded{font-size:1.4rem}.native-app .mobile-bottom-nav a.active{color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent)}.native-app .web-home{display:none}.native-app .native-home-screen{display:block}.native-app .native-welcome{padding:.3rem 0 .95rem}.native-app .native-welcome>span{color:var(--accent);font-size:.68rem;font-weight:800;letter-spacing:.14em}.native-app .native-welcome h1{margin:.25rem 0 0;font-size:1.75rem;line-height:1.18;letter-spacing:-.04em}.native-app .native-section{margin-bottom:1.55rem}.native-app .native-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:.7rem}.native-app .native-section-heading h2{margin:0;font-size:1rem;letter-spacing:-.015em}.native-app .native-section-heading>span{display:grid;min-width:28px;height:28px;place-items:center;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:.72rem}.native-app .native-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.native-app .native-quick-card{display:flex;min-height:96px;padding:.9rem;flex-direction:column;justify-content:space-between;border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border));border-radius:20px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 9%,var(--surface)),var(--surface));color:var(--text)}.native-app .native-quick-card .material-symbols-rounded{color:var(--accent);font-size:1.8rem}.native-app .native-quick-card strong{font-size:.88rem;line-height:1.2}.native-app .native-category-row{display:flex;gap:.65rem;overflow-x:auto;padding:.05rem 0 .35rem;scrollbar-width:none}.native-app .native-category-row::-webkit-scrollbar{display:none}.native-app .native-category-row a{display:flex;min-width:74px;gap:.4rem;flex-direction:column;align-items:center;color:var(--text)}.native-app .native-category-row a>.material-symbols-rounded{display:grid;width:54px;height:54px;place-items:center;border-radius:17px;background:var(--surface-2);color:var(--accent);font-size:1.55rem}.native-app .native-category-row small{max-width:74px;overflow:hidden;text-overflow:ellipsis;font-size:.7rem;white-space:nowrap}.native-app .native-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.75rem;gap:.75rem}.native-app .native-tool-tile{position:relative;display:flex;min-height:124px;min-width:0;padding:.9rem;flex-direction:column;justify-content:space-between;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:0 5px 18px rgba(20,12,42,.05)}.native-app .native-tool-tile:active{transform:scale(.975)}.native-app .native-tool-icon{display:grid;width:58px;height:58px;place-items:center;border-radius:18px;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));color:var(--accent);font-size:1.8rem}.native-app .native-tool-tile strong{max-width:calc(100% - 20px);overflow-wrap:anywhere;font-size:.86rem;line-height:1.22}.native-app .native-tile-arrow{position:absolute;right:.7rem;bottom:.72rem;color:var(--muted);font-size:1rem}.native-app .native-empty{padding:2.5rem 1rem;color:var(--muted);text-align:center}.native-app .native-floating-search{position:fixed;z-index:79;right:max(1rem,env(safe-area-inset-right));bottom:calc(4.75rem + env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left));display:flex;height:58px;align-items:center;gap:.7rem;padding:0 .85rem 0 1rem;border:1px solid color-mix(in srgb,var(--accent) 15%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 10px 28px rgba(20,12,42,.2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.native-app .native-floating-search>.material-symbols-rounded{color:var(--muted)}.native-app .native-floating-search input{min-width:0;height:100%;flex:1 1;padding:0;border:0;background:transparent;box-shadow:none;font:500 16px var(--sans)}.native-app .native-floating-search button{display:grid;width:36px;height:36px;place-items:center;padding:0;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted)}.native-app .native-floating-search button .material-symbols-rounded{font-size:1.15rem}.native-app .mobile-bottom-nav{padding-top:.3rem;border-radius:22px 22px 0 0}.native-app .mobile-bottom-nav a:nth-child(2) .material-symbols-rounded{display:grid;width:38px;height:34px;place-items:center;border-radius:13px;background:color-mix(in srgb,var(--accent) 14%,transparent)}.native-app .content{padding:.9rem 1rem calc(6rem + env(safe-area-inset-bottom))}.native-app.native-home .content{padding-bottom:calc(10.5rem + env(safe-area-inset-bottom))}.native-app .hero{padding:.7rem 0 1rem;text-align:left}.native-app .hero .eyebrow,.native-app .hero>p:last-child,.native-app .home-seo,.native-app .popular-section{display:none}.native-app .hero h1{max-width:18rem;margin:0;font-size:1.65rem;line-height:1.18;letter-spacing:-.035em}.native-app .tool-search{position:fixed;z-index:79;right:max(1rem,env(safe-area-inset-right));bottom:calc(4.75rem + env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left));max-width:none;margin:0;filter:drop-shadow(0 10px 24px rgba(18,10,38,.22))}.native-app .tool-search input[type=text]{min-height:56px;padding-top:.85rem;padding-bottom:.85rem;border-color:color-mix(in srgb,var(--accent) 14%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 4px 18px rgba(18,10,38,.12);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);font-size:.95rem}.native-app .tool-search input[type=text]:focus{border-color:color-mix(in srgb,var(--accent) 58%,var(--border));box-shadow:0 6px 24px rgba(8,168,199,.2)}.native-app .tool-search-kbd{display:none}.native-app .cat-title{margin:1.35rem 0 .65rem;font-size:.72rem}.native-app .tool-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.native-app .tool-card{display:flex;min-width:0;min-height:132px;padding:.9rem;flex-direction:column;justify-content:space-between;border-radius:18px;box-shadow:0 5px 18px rgba(20,12,42,.06)}.native-app .tool-card:active{transform:scale(.975)}.native-app .tool-card .icon{width:58px;height:58px;margin:0 0 .9rem;border:0;border-radius:17px;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));font-size:1.15rem}.native-app .category-page .tool-card h2,.native-app .tool-card h3{margin:0;overflow-wrap:anywhere;font-size:.9rem;line-height:1.25}.native-app .tool-card p{display:none}.native-app .topbar{min-height:58px;gap:.55rem;padding:.55rem max(1rem,env(safe-area-inset-right)) .55rem max(1rem,env(safe-area-inset-left));border-bottom-color:color-mix(in srgb,var(--border) 72%,transparent);box-shadow:0 2px 14px rgba(22,12,44,.05)}.native-app .topnav{display:flex;margin-left:auto}.native-app .header-actions{justify-content:flex-end;margin-left:0}.native-app .header-menu{display:block}.native-app .header-menu-toggle{border-radius:11px}.native-app .tool-breadcrumbs,.native-app .tool-seo{display:none}.native-app .tool-header{margin:.25rem 0 1rem}.native-app .tool-header h1{margin:0;font-size:1.45rem;line-height:1.2;letter-spacing:-.025em}.native-app .tool-header p{display:none}.native-app .category-page header{margin:.3rem 0 1.1rem}.native-app .category-page header h1{margin:0;font-size:1.45rem;line-height:1.2;letter-spacing:-.025em}.native-app .category-page header p{display:none}.native-app .panel{padding:1rem;border-radius:18px;box-shadow:0 5px 18px rgba(20,12,42,.045)}.native-app label.field{margin-bottom:.45rem;font-size:.78rem;font-weight:650}.native-app input[type=date],.native-app input[type=number],.native-app input[type=text],.native-app select,.native-app textarea{min-height:48px;padding:.72rem .8rem;border-radius:12px;font-size:16px}.native-app input[type=range]{width:100%;min-height:34px}.native-app button.btn,.native-app label.btn{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:.65rem .9rem;border-radius:12px;font-weight:680;gap:.4rem}.native-app button.btn>.material-symbols-rounded{flex:0 0 auto;font-size:1.25rem}.native-app .theme-toggle .material-symbols-rounded{font-size:1.45rem}.native-app .tool-card .icon.material-symbols-rounded{font-family:Material Symbols Rounded;font-size:1.55rem;font-weight:400;letter-spacing:normal}.native-app .scanner-camera-close,.native-app .scanner-page-remove{display:grid;place-items:center}.native-app .scanner-camera-close .material-symbols-rounded,.native-app .scanner-page-remove .material-symbols-rounded{font-size:1.2rem}.native-app .controls-row{display:grid;grid-template-columns:1fr;grid-gap:.85rem;gap:.85rem;align-items:stretch}.native-app .controls-row>div{min-width:0}.native-app .toolbar{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;padding-bottom:.15rem}.native-app .toolbar::-webkit-scrollbar{display:none}.native-app .toolbar>.btn{flex:0 0 auto}.native-app .dropzone{padding:1.15rem 1rem;border-width:1.5px;border-radius:16px;background:color-mix(in srgb,var(--surface-2) 48%,var(--surface))}.native-app .dropzone p{margin:.15rem 0;font-size:.9rem}.native-app .dropzone .hint{font-size:.74rem}.native-app textarea.code{min-height:42vh;font-size:16px}.native-app .preview{min-height:36vh;border-radius:14px}.native-app .result-card{border-radius:14px}.native-app .table-wrap{max-width:calc(100vw - 2rem);-webkit-overflow-scrolling:touch}.native-app .preset-chips{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:none}.native-app .chip{flex:0 0 auto;min-height:38px;padding:.45rem .75rem}.native-app .finance-primary{font-size:2rem}.native-app .finance-summary-grid{grid-template-columns:1fr}.native-app .organizer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.native-app .finance-screen{height:calc(100dvh - 146px - env(safe-area-inset-bottom));min-height:520px;overflow:hidden}.native-app .finance-screen .finance-tool,.native-app .finance-screen>div{display:flex;height:100%;min-height:0;flex-direction:column}.native-app .finance-screen .tool-header{flex:0 0 auto;margin:0 0 .45rem}.native-app .finance-screen .tool-header h1{font-size:1.12rem}.native-app .finance-screen .emi-layout,.native-app .finance-screen .finance-layout{display:grid;min-height:0;flex:1 1;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);grid-gap:.55rem;gap:.55rem}.native-app .finance-screen .panel{padding:.68rem .78rem;border-radius:16px}.native-app .finance-screen label.field{margin-bottom:.18rem;font-size:.7rem}.native-app .finance-screen .emi-field,.native-app .finance-screen .finance-inputs label.field:not(:first-child){margin-top:.38rem}.native-app .finance-screen input[type=date],.native-app .finance-screen input[type=number],.native-app .finance-screen select{min-height:40px;padding:.45rem .62rem}.native-app .finance-screen input[type=range]{min-height:25px;margin:0}.native-app .finance-screen .emi-layout .panel>.hint:last-child,.native-app .finance-screen .finance-inputs>.hint,.native-app .finance-screen .finance-note,.native-app .finance-screen>div>.hint:last-child{display:none}.native-app .finance-screen .emi-results,.native-app .finance-screen .finance-results{min-height:0;justify-content:flex-start}.native-app .finance-screen .emi-primary,.native-app .finance-screen .finance-primary{margin:.05rem 0 .45rem;font-size:1.72rem}.native-app .finance-screen .emi-breakdown,.native-app .finance-screen .finance-breakdown{gap:.25rem}.native-app .finance-screen .emi-breakdown>div,.native-app .finance-screen .finance-breakdown>div{padding-bottom:.25rem;font-size:.78rem}.native-app .finance-screen .emi-bar,.native-app .finance-screen .finance-bar{height:8px;margin-top:.48rem}.native-app .finance-screen .emi-legend{margin-top:.3rem;font-size:.68rem}.native-app .finance-screen .emi-download{min-height:40px;margin-top:.48rem;padding:.45rem .7rem;font-size:.75rem}.native-app .finance-screen .preset-chips{margin-bottom:.4rem}.native-app .finance-screen .chip{min-height:34px;padding:.35rem .65rem}.native-app .finance-screen .controls-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .55rem;margin:0}.native-app .finance-screen .finance-summary-grid{display:flex;min-height:0;margin-top:.55rem;gap:.6rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scrollbar-width:none}.native-app .finance-screen .finance-summary-grid::-webkit-scrollbar{display:none}.native-app .finance-screen .finance-summary-grid>.panel{min-width:88%;scroll-snap-align:start}.native-app .content:has(.pdf-screen){padding-bottom:calc(11rem + env(safe-area-inset-bottom))}.native-app .content:has(.pdf-screen:not(:has(button.btn.primary))){min-height:calc(100dvh - 58px);padding-bottom:calc(5.5rem + env(safe-area-inset-bottom))}.native-app .pdf-screen:not(:has(button.btn.primary)),.native-app .pdf-screen:not(:has(button.btn.primary))>div{display:flex;min-height:0;flex:1 1;flex-direction:column}.native-app .pdf-screen:not(:has(button.btn.primary)) .dropzone{position:static;width:100%;min-height:150px;margin-block:auto;padding:1.25rem 1rem;border-style:solid;background:color-mix(in srgb,var(--surface) 96%,transparent);box-shadow:0 8px 24px rgba(20,12,42,.12)}.native-app .pdf-screen button.btn.primary{width:auto;min-height:56px;border-radius:17px;box-shadow:0 10px 28px rgba(74,31,145,.3)}.native-app .pdf-screen button.btn.primary,.native-app .scanner-capture:not(.camera-active){position:fixed;z-index:78;right:max(1rem,env(safe-area-inset-right));bottom:calc(4.75rem + env(safe-area-inset-bottom));left:max(1rem,env(safe-area-inset-left))}.native-app .scanner-capture:not(.camera-active){margin:0;padding:1rem;border:1px solid var(--border);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 11%,var(--surface)),var(--surface));box-shadow:0 10px 28px rgba(20,12,42,.2);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.native-app .scanner-capture:not(.camera-active) .toolbar{margin:0;flex-direction:column;overflow:visible}.native-app .content:has(.scanner-capture:not(.camera-active)){padding-bottom:calc(13rem + env(safe-area-inset-bottom))}.native-app .scanner-capture:not(.camera-active) .btn.primary{width:100%;min-height:58px;border-radius:16px;font-size:1rem;gap:.7rem}.native-app .scanner-start-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:12px;background:hsla(0,0%,100%,.18);font-size:1.4rem}.native-app .scanner-capture:not(.camera-active) .hint{font-size:.75rem}.native-app .scanner-capture.camera-active{margin-inline:calc(50% - 50vw);padding:0;border:0;border-radius:0;background:#050505}.native-app .scanner-camera-stage{min-height:min(64vh,620px);border-radius:0;display:grid;place-items:center}.native-app .scanner-video{width:100%;max-height:min(64vh,620px)}.native-app .scanner-shutter{width:82px;height:82px;bottom:24px}.native-app .scanner-camera-caption{padding:.75rem 1rem .9rem;background:var(--surface)}.native-app .scanner-page-chip{flex:0 0 auto;min-height:42px;border-radius:11px}.native-app .scanner-preview-panel{padding:.45rem;border-radius:16px}.native-app .scanner-canvas-wrap,.native-app .scanner-preview-panel,.native-app .scanner-preview-panel+div{width:100%;max-width:100%;min-width:0}.native-app .scanner-canvas-wrap{justify-content:center;overflow:hidden}.native-app .scanner-canvas-wrap canvas{width:100%!important;max-width:100%!important;height:auto!important;object-fit:contain}.native-app .scanner-preview-panel+div{overflow:hidden}.native-app .scanner-preview-panel+div input,.native-app .scanner-preview-panel+div select{max-width:100%}.native-app .scanner-preview-panel+div>.toolbar{margin:.1rem 0 .9rem;width:100%;max-width:100%;overflow-x:auto}.native-app .scanner-preview-panel+div>.toolbar .btn{min-width:max-content;flex:0 0 auto}@media (max-width:760px){.native-app .split{grid-template-columns:1fr}.native-app button.btn,.native-app label.btn{min-height:44px}.native-app textarea.code{min-height:52vh}}.brand{display:flex;align-items:center;gap:.5rem;font-weight:700;font-size:1.15rem;color:var(--text)}.brand-mark{color:var(--accent);display:inline-flex;align-items:center}.brand-word{letter-spacing:-.01em}.brand-open{color:var(--text)}.brand-kit{color:var(--accent-cyan)}.topnav{min-width:0}.topnav,.topnav-list{display:flex;align-items:center}.topnav-list{gap:.35rem;flex-wrap:nowrap}.header-actions{display:flex;margin-left:auto;align-items:center;gap:.55rem;flex:none}.header-menu,.user-profile{position:relative;flex:none}.user-profile-toggle{display:grid;width:40px;height:40px;overflow:hidden;place-items:center;padding:0;border:2px solid color-mix(in srgb,var(--accent-cyan) 55%,var(--border));border-radius:50%;background:var(--surface-2);color:var(--accent);font-weight:800;cursor:pointer;transition:border-color .15s,box-shadow .15s,transform .15s}.user-profile-toggle:hover,.user-profile-toggle[aria-expanded=true]{border-color:var(--accent-cyan);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-cyan) 14%,transparent);transform:translateY(-1px)}.user-profile-avatar img,.user-profile-toggle img{width:100%;height:100%;object-fit:cover}.user-profile-placeholder{border-style:dashed;color:var(--muted);text-decoration:none}.user-profile-placeholder:hover{color:var(--accent)}.user-profile-placeholder .material-symbols-rounded{font-size:1.35rem}.user-profile-loading{opacity:.45;pointer-events:none}.user-profile-popover{position:absolute;top:calc(100% + 10px);right:0;z-index:42;width:min(310px,calc(100vw - 1.5rem));padding:.7rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow)}.user-profile-summary{display:grid;grid-template-columns:52px minmax(0,1fr);align-items:center;grid-gap:.8rem;gap:.8rem;padding:.5rem}.user-profile-avatar{display:grid;width:52px;height:52px;overflow:hidden;place-items:center;border:2px solid color-mix(in srgb,var(--accent-cyan) 52%,var(--border));border-radius:50%;background:var(--surface-2);color:var(--accent);font-size:1.2rem;font-weight:800}.user-profile-summary small,.user-profile-summary strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-profile-summary strong{color:var(--text);font-size:.96rem}.user-profile-summary small{margin-top:.15rem;color:var(--muted);font-size:.78rem}.user-profile-status{display:flex;align-items:center;gap:.45rem;margin:.45rem 0;padding:.7rem;border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:.78rem}.user-profile-status .material-symbols-rounded{color:var(--ok);font-size:1.05rem}.user-profile-admin,.user-profile-signin,.user-profile-signout{display:flex;width:100%;min-height:42px;align-items:center;gap:.55rem;padding:.55rem .7rem;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.user-profile-admin,.user-profile-signin{color:var(--text)}.user-profile-admin:hover,.user-profile-signin:hover,.user-profile-signout:hover{background:var(--surface-2)}.user-profile-admin .material-symbols-rounded,.user-profile-signin .material-symbols-rounded,.user-profile-signout .material-symbols-rounded{color:var(--accent-cyan);font-size:1.2rem}.header-menu-toggle{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.header-menu-toggle:hover,.header-menu-toggle[aria-expanded=true]{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface-2))}.header-menu-toggle .material-symbols-rounded{font-size:1.45rem}.header-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:220px;padding:6px;display:flex;flex-direction:column;gap:2px;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:var(--shadow)}.header-dropdown a,.header-dropdown button{width:100%;min-height:44px;display:grid;grid-template-columns:24px 1fr auto;align-items:center;grid-gap:.65rem;gap:.65rem;padding:.55rem .65rem;border:0;border-radius:9px;background:transparent;color:var(--text);font:inherit;font-size:.92rem;text-align:left;cursor:pointer}.header-dropdown a.active,.header-dropdown a:hover,.header-dropdown button:hover{background:var(--surface-2);color:var(--text)}.header-dropdown .material-symbols-rounded{font-size:1.25rem;color:var(--accent-cyan)}.header-menu-value{color:var(--muted);font-size:.78rem}.mobile-docs-link{display:none}.about-modal-backdrop{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:1rem;background:rgba(15,10,30,.58);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.about-modal{position:relative;width:min(100%,390px);padding:2rem 1.5rem 1.5rem;border:1px solid var(--border);border-radius:20px;background:var(--surface);color:var(--text);text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.3)}.about-modal-close{position:absolute;top:.75rem;right:.75rem;display:grid;width:38px;height:38px;place-items:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface-2);color:var(--text);cursor:pointer}.about-modal-brand{align-items:center;gap:.55rem;margin:.5rem 2.5rem 1.25rem;font-size:1.35rem;font-weight:800}.about-modal-brand,.about-modal-brand .brand-mark{display:inline-flex}.about-version{margin:0;color:var(--muted);font-size:.9rem}.about-copyright{margin:1.25rem 0 0;padding-top:1.1rem;border-top:1px solid var(--border);color:var(--muted);font-size:.82rem}.contact-page{width:min(100%,720px);margin:0 auto;padding:1.5rem 0 3rem}.contact-head{text-align:center;margin-bottom:1.5rem}.contact-head .eyebrow{margin:0 0 .35rem;color:var(--accent);font-size:.75rem;font-weight:800;letter-spacing:.16em}.contact-head h1{margin:0;font-size:clamp(2rem,5vw,3rem);letter-spacing:-.035em}.contact-head>p:last-child{max-width:580px;margin:.65rem auto 0;color:var(--muted)}.contact-form{padding:clamp(1rem,4vw,1.5rem)}.contact-fields{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}.contact-form .field{display:grid;grid-gap:.4rem;gap:.4rem;margin-bottom:1rem;font-weight:650}.contact-form textarea{resize:vertical;min-height:170px}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-verification{min-height:65px;margin:.2rem 0 1rem;overflow:hidden}.contact-verification>div{width:100%}.contact-submit{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.contact-status{margin:0;font-size:.9rem}.contact-status.sent{color:#15803d}.contact-status.error{color:#dc2626}@media (max-width:620px){.contact-fields{grid-template-columns:1fr;gap:0}}.nav-toggle{display:none;width:40px;height:40px;align-items:center;justify-content:center;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:8px;line-height:1;padding:0;cursor:pointer}.nav-toggle .material-symbols-rounded{font-size:1.55rem}.topnav a{color:var(--muted);padding:.35rem .7rem;border-radius:8px;font-size:.9rem;transition:background .15s,color .15s}.topnav a:hover{background:var(--surface-2);color:var(--text)}.topnav a.active{background:var(--accent);color:#fff}.nav-group{position:relative;display:inline-flex}.nav-trigger{display:inline-flex;align-items:center;gap:.3rem;background:none;border:none;cursor:pointer;color:var(--muted);padding:.35rem .7rem;border-radius:8px;font-size:.9rem;font-family:inherit;transition:background .15s,color .15s}.nav-trigger:hover,.nav-trigger[aria-expanded=true]{background:var(--surface-2);color:var(--text)}.nav-trigger.active{color:var(--text)}.nav-trigger.active:after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:-2px;height:2px;border-radius:2px;background:var(--accent)}.caret{font-size:.65rem;opacity:.7;transition:transform .15s}.caret.up{transform:rotate(180deg)}.nav-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:264px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:6px;z-index:30;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:2px}.nav-menu a{display:flex;align-items:center;gap:.6rem;padding:.5rem .6rem;border-radius:8px;color:var(--text)}.nav-menu a:hover{background:var(--surface-2)}.nav-menu a.active{background:var(--accent);color:#fff}.nav-menu-text{display:flex;flex-direction:column;line-height:1.25}.nav-menu-name{font-size:.9rem}:root:not([data-theme=light]) .nav-menu a{color:#fff}@media (max-width:1100px){.nav-toggle{display:inline-flex}.topnav{order:3;margin-left:auto}.header-actions{order:3;margin-left:0}.topnav-list{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:.1rem;background:var(--surface);border-bottom:1px solid var(--border);box-shadow:var(--shadow);padding:.5rem;max-height:calc(100vh - 58px);overflow-y:auto}.topnav-list.open{display:flex}.topnav-list>a{padding:.6rem .7rem}.nav-group{display:block;width:100%}.nav-trigger{width:100%;justify-content:space-between;padding:.6rem .7rem}.nav-trigger.active:after{display:none}.nav-menu{position:static;min-width:0;box-shadow:none;border:none;background:transparent;padding:.1rem 0 .3rem .75rem}}.content{flex:1 1;width:100%;max-width:1100px;margin:0 auto;padding:.35rem 1.25rem 2rem}.hero{text-align:center;padding:2.5rem 0 1.5rem}.hero h1{font-size:2.4rem;margin:0 0 .5rem;letter-spacing:-.02em}.hero p{color:var(--muted);font-size:1.1rem;max-width:620px;margin:0 auto}.hero .hero-description{display:-webkit-box;max-width:700px;overflow:hidden;line-height:1.45;text-wrap:balance;-webkit-box-orient:vertical;-webkit-line-clamp:2}.tool-search{position:relative;max-width:560px;margin:.5rem auto 2.5rem}.category-filters{display:flex;max-width:100%;margin:-1.35rem auto .75rem;padding:.15rem 0;gap:.45rem;justify-content:center;overflow-x:auto;scrollbar-width:none}.category-filters::-webkit-scrollbar{display:none}.category-filters button{flex:0 0 auto;padding:.45rem .72rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--muted);font:650 .82rem var(--sans);cursor:pointer}.category-filters button:hover{border-color:var(--accent);color:var(--text)}.category-filters button.active{border-color:var(--accent);background:var(--accent);color:#fff}.category-filters .favorites-filter{display:inline-flex;align-items:center;gap:.32rem;border-color:color-mix(in srgb,#f5b800 52%,var(--border));color:color-mix(in srgb,#d99b00 76%,var(--text))}.category-filters .favorites-filter .material-symbols-rounded{font-size:1rem}.category-filters .favorites-filter.active{border-color:#d99b00;background:#f5b800;color:#342500}.tool-results-summary{display:flex;align-items:center;justify-content:center;min-height:2rem;margin-bottom:.55rem;gap:.25rem;color:var(--muted);font-size:.82rem}.tool-results-summary button{margin-left:.45rem;border:0;background:none;color:var(--accent);font:inherit;font-weight:700;cursor:pointer}.tool-search input[type=text]{width:100%;font-family:var(--sans);font-size:1.05rem;padding:.95rem 3.4rem .95rem 3.6rem;border-radius:28px;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);transition:border-color .15s,box-shadow .15s}.tool-search input[type=text]:hover{border-color:var(--accent-hover)}.tool-search input[type=text]::placeholder{color:var(--muted)}.tool-search input[type=text]:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 22%,transparent)}.tool-search-icon{position:absolute;left:1.35rem;top:50%;transform:translateY(-50%);display:flex;color:var(--accent-cyan);pointer-events:none;transition:color .15s}.tool-search:focus-within .tool-search-icon{color:var(--accent)}.tool-search-kbd{right:.95rem;font-size:.78rem;line-height:1;background:color-mix(in srgb,var(--accent-cyan) 9%,var(--surface-2));border:1px solid var(--border);border-radius:6px;padding:3px 8px;pointer-events:none}.tool-search-clear,.tool-search-kbd{position:absolute;top:50%;transform:translateY(-50%);color:var(--muted)}.tool-search-clear{right:.7rem;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;background:var(--surface-2);border:none;border-radius:7px;font-size:.85rem;cursor:pointer;transition:color .15s,background .15s}.tool-search-clear:hover{color:var(--text);background:var(--border)}.cat-title{font-size:.8rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:2rem 0 .75rem}.tool-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:1rem;gap:1rem}.tool-card-shell{position:relative;min-width:0}.tool-card{display:block;height:100%;padding:1.1rem 3.3rem 1.1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);box-shadow:0 1px 2px rgba(20,12,28,.025);transition:border-color .15s,transform .15s,background .15s,box-shadow .15s}.tool-card:hover{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:var(--surface-2);box-shadow:0 8px 20px rgba(30,17,42,.08);transform:translateY(-1px)}.tool-card .icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:10px;background:color-mix(in srgb,var(--accent-cyan) 9%,var(--surface-2));color:var(--accent-hover);font-family:var(--mono);border:1px solid color-mix(in srgb,var(--accent-cyan) 30%,var(--border));font-size:1.05rem;font-weight:700;line-height:1;letter-spacing:-.04em;margin-bottom:.75rem}.tool-card h3{margin:0 0 .25rem;font-size:1.05rem;font-weight:620;letter-spacing:-.015em}.tool-card p{margin:0;color:var(--muted);font-size:.9rem}.tool-header{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.85rem}.tool-header-copy{min-width:0;flex:1 1}.tool-header h1{margin:0 0 .15rem;font-size:1.35rem;font-weight:650;letter-spacing:-.025em}.tool-header p{margin:0;color:var(--muted);font-size:.9rem}.favorite-button{display:inline-grid;width:38px;height:38px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--muted);cursor:pointer;box-shadow:0 4px 12px rgba(7,17,31,.06);transition:color .16s,border-color .16s,background .16s,box-shadow .16s,transform .16s}.favorite-button .material-symbols-rounded{font-size:1.28rem;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.favorite-button:hover:not(:disabled){border-color:#e3aa00;color:#d99b00;box-shadow:0 7px 18px rgba(111,77,0,.14);transform:translateY(-1px)}.favorite-button.active{border-color:#e3aa00;background:color-mix(in srgb,#f5b800 14%,var(--surface));color:#e0a300}.favorite-button.active .material-symbols-rounded{font-variation-settings:"FILL" 1,"wght" 600,"GRAD" 0,"opsz" 24}.favorite-button:disabled{cursor:wait;opacity:.48}.tool-card-favorite{position:absolute;top:.8rem;right:.8rem;z-index:2}.tool-header-favorite{margin-top:.05rem}.favorite-dialog-backdrop{position:fixed;z-index:130;inset:0;display:grid;place-items:center;padding:1rem;background:rgba(5,14,26,.62);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.favorite-dialog{position:relative;width:min(100%,410px);padding:2rem 1.6rem 1.5rem;border:1px solid var(--border);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:0 28px 80px rgba(0,0,0,.28);text-align:center}.favorite-dialog-close{position:absolute;top:.75rem;right:.75rem;display:grid;width:36px;height:36px;place-items:center;padding:0;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.favorite-dialog-icon{display:inline-grid;width:58px;height:58px;place-items:center;border-radius:17px;background:color-mix(in srgb,#f5b800 16%,var(--surface-2));color:#e0a300;font-size:1.9rem;font-variation-settings:"FILL" 1,"wght" 600,"GRAD" 0,"opsz" 24}.favorite-dialog h2{margin:1rem 0 .4rem;font-size:1.35rem;letter-spacing:-.025em}.favorite-dialog p{margin:0 auto 1.25rem;color:var(--muted);font-size:.9rem;line-height:1.6}.favorite-dialog-action{display:flex;min-height:48px;align-items:center;justify-content:center;border-radius:12px;background:var(--accent);color:#fff;font-weight:750}.favorite-dialog-action:hover{background:var(--accent-hover);color:#fff}.favorite-dialog-later{margin-top:.55rem;padding:.55rem 1rem;border:0;background:transparent;color:var(--muted);cursor:pointer}.favorite-toast{position:fixed;z-index:135;right:1rem;bottom:1rem;display:flex;width:min(390px,calc(100vw - 2rem));align-items:center;gap:.8rem;padding:.8rem .8rem .8rem 1rem;border:1px solid var(--border);border-radius:13px;background:var(--surface);box-shadow:var(--shadow);color:var(--text);font-size:.84rem}.favorite-toast span:first-child{flex:1 1}.favorite-toast button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.favorites-empty{display:grid;place-items:center;margin:1.5rem auto 2.5rem;padding:2rem 1rem;color:var(--muted);text-align:center}.favorites-empty>.material-symbols-rounded{color:#d99b00;font-size:2.2rem;font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 24}.favorites-empty strong{margin-top:.55rem;color:var(--text)}.favorites-empty p{margin:.25rem 0 0;font-size:.86rem}.json-mock-tool{max-width:1280px}.mock-summary{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding:.85rem 1rem;border:1px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:0 8px 24px rgba(7,17,31,.05)}.mock-summary>div:first-child{display:flex;align-items:center;gap:.6rem}.mock-summary>div:first-child>.material-symbols-rounded{color:var(--accent-cyan);font-size:1.8rem}.mock-summary small,.mock-summary strong{display:block}.mock-summary strong{color:var(--text);font-size:1.15rem;line-height:1}.mock-summary small{margin-top:.15rem;color:var(--muted);font-size:.72rem}.mock-summary p{flex:1 1;margin:0;color:var(--muted);font-size:.82rem}.mock-summary-actions{display:flex;align-items:center;gap:.45rem}.mock-workspace{display:grid;grid-template-columns:minmax(240px,.65fr) minmax(0,2fr);min-height:540px;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 12px 32px rgba(7,17,31,.06)}.mock-endpoint-list{padding:.85rem;border-right:1px solid var(--border);background:color-mix(in srgb,var(--surface-2) 65%,var(--surface))}.mock-section-heading{display:flex;min-height:42px;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.mock-section-heading>div:first-child>small,.mock-section-heading>div:first-child>span{display:block}.mock-section-heading>div:first-child>span{color:var(--text);font-weight:750}.mock-section-heading>div:first-child>small{margin-top:.12rem;color:var(--muted);font-size:.72rem}.mock-section-heading>div:last-child{display:flex;gap:.4rem}.mock-endpoint-list .mock-section-heading>button{display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--accent);font-size:1.3rem;cursor:pointer}.mock-endpoint-item{display:grid;width:100%;grid-template-columns:58px minmax(0,1fr) auto;align-items:center;grid-gap:.55rem;gap:.55rem;margin-bottom:.35rem;padding:.62rem;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.mock-endpoint-item:hover{background:var(--surface)}.mock-endpoint-item.active{border-color:color-mix(in srgb,var(--accent-cyan) 45%,var(--border));background:var(--surface);box-shadow:0 5px 16px rgba(7,17,31,.06)}.mock-endpoint-item>span:nth-child(2){overflow:hidden;font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.mock-endpoint-item>small{color:var(--muted);font-size:.7rem}.mock-method{display:inline-flex;min-height:25px;align-items:center;justify-content:center;padding:.15rem .38rem;border-radius:7px;background:var(--surface-2);font-size:.65rem;font-weight:850;letter-spacing:.04em}.method-get{color:#087f5b;background:color-mix(in srgb,#20c997 14%,var(--surface))}.method-post{color:#1769aa;background:color-mix(in srgb,#42a5f5 14%,var(--surface))}.method-patch,.method-put{color:#9a6500;background:color-mix(in srgb,#ffbd2e 18%,var(--surface))}.method-delete{color:#bd2c3c;background:color-mix(in srgb,#ef5262 13%,var(--surface))}.mock-editor{min-width:0;padding:1rem}.mock-route-row{display:grid;grid-template-columns:120px minmax(220px,1fr) 110px 120px;grid-gap:.65rem;gap:.65rem;margin-bottom:.8rem}.mock-code-grid label,.mock-request-body,.mock-route-row label{display:block}.mock-code-grid label>span,.mock-request-body>span,.mock-route-row label>span{display:block;margin-bottom:.35rem;color:var(--muted);font-size:.72rem;font-weight:700}.mock-request-bar input,.mock-request-bar select,.mock-route-row input,.mock-route-row select{width:100%;min-height:42px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text)}.mock-path-field input{font-family:var(--font-geist-mono),ui-monospace,monospace}.mock-code-grid{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(0,1.5fr);grid-gap:.75rem;gap:.75rem;margin-bottom:.75rem}.mock-code-grid textarea{width:100%;min-height:330px;resize:vertical}.mock-code-grid label:first-child textarea{min-height:180px}.btn.danger{color:#c22f42}.mock-empty{display:grid;min-height:180px;place-items:center;align-content:center;color:var(--muted);text-align:center}.mock-empty .material-symbols-rounded{font-size:2rem}.mock-empty p{margin:.45rem 0 0;font-size:.82rem}.mock-tester{margin-top:1rem;padding:1rem;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 12px 32px rgba(7,17,31,.06)}.mock-request-bar{display:grid;grid-template-columns:120px minmax(0,1fr) 150px;grid-gap:.65rem;gap:.65rem}.mock-request-body{margin-top:.75rem}.mock-request-body textarea{width:100%;min-height:110px;resize:vertical}.mock-response{margin-top:.85rem;overflow:hidden;border:1px solid var(--border);border-radius:13px;background:var(--surface-2)}.mock-response-meta{display:flex;align-items:center;gap:.65rem;padding:.65rem .75rem;border-bottom:1px solid var(--border);color:var(--muted);font-size:.78rem}.mock-response-meta button{margin-left:auto}.mock-response-meta>span:first-child{font-weight:800}.response-ok{color:var(--ok)}.response-error{color:#d03548}.mock-response-content{display:grid;grid-template-columns:minmax(210px,.65fr) minmax(0,1.5fr)}.mock-response-content>div{min-width:0;padding:.75rem}.mock-response-content>div+div{border-left:1px solid var(--border)}.mock-response-content strong{color:var(--text);font-size:.75rem}.mock-response-content pre{max-height:320px;overflow:auto;margin:.5rem 0 0;color:var(--text);font-family:var(--font-geist-mono),ui-monospace,monospace;font-size:.76rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.mock-footnote{margin:.8rem .2rem 0}@media (max-width:820px){.mock-summary{align-items:flex-start;flex-wrap:wrap}.mock-summary p{flex-basis:calc(100% - 120px)}.mock-summary-actions{width:100%;flex-wrap:wrap}.mock-workspace{grid-template-columns:1fr}.mock-endpoint-list{max-height:280px;overflow:auto;border-right:0;border-bottom:1px solid var(--border)}.mock-route-row{grid-template-columns:1fr 1fr}.mock-path-field{grid-column:1/-1;grid-row:1}.mock-code-grid,.mock-response-content{grid-template-columns:1fr}.mock-code-grid textarea{min-height:230px}.mock-response-content>div+div{border-top:1px solid var(--border);border-left:0}}@media (max-width:520px){.mock-request-bar,.mock-route-row{grid-template-columns:1fr}.mock-path-field{grid-column:auto;grid-row:auto}.mock-request-bar .btn{width:100%}}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1rem;box-shadow:0 1px 2px rgba(20,12,28,.025)}.split{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media (min-width:801px){.keep-output-visible-layout{align-items:start}.scrollable-editing-panel{max-height:calc(100dvh - 150px);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--muted) 45%,transparent) transparent}.scrollable-editing-panel::-webkit-scrollbar{width:8px}.scrollable-editing-panel::-webkit-scrollbar-track{background:transparent}.scrollable-editing-panel::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:color-mix(in srgb,var(--muted) 42%,transparent);background-clip:padding-box}.persistent-output-panel{position:-webkit-sticky;position:sticky;top:76px;max-height:calc(100dvh - 88px);overflow:auto}}.qr-tool{max-width:960px;margin:0 auto}.qr-tool .tool-header{margin-bottom:.65rem}.qr-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);grid-gap:.75rem;gap:.75rem;align-items:start}.qr-controls,.qr-preview{padding:1rem}.qr-section-heading{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.65rem}.qr-section-heading h2{margin:0;font-size:.98rem;letter-spacing:-.01em}.qr-section-heading p{margin:.08rem 0 0;color:var(--muted);font-size:.76rem}.qr-step{display:grid;width:23px;height:23px;flex:0 0 23px;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));color:var(--accent);font-size:.72rem;font-weight:750}.qr-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.4rem;gap:.4rem;margin-bottom:.7rem}.qr-presets button{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.3rem;min-width:0;padding:.42rem .25rem;border:1px solid var(--border);border-radius:7px;background:var(--surface-2);color:var(--muted);font:inherit;font-size:.73rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.qr-presets button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--surface));color:var(--text)}.qr-presets .material-symbols-rounded{font-size:1rem;color:var(--accent)}.qr-controls textarea.code{min-height:78px;resize:vertical;white-space:pre-wrap;font-family:var(--sans);line-height:1.4}.qr-divider{height:1px;margin:.85rem 0;background:var(--border)}.qr-settings-grid{display:grid;grid-template-columns:1.3fr .8fr;grid-gap:.8rem;gap:.8rem;align-items:end}.qr-color-field,.qr-range-field,.qr-select-field{display:block;color:var(--muted);font-size:.8rem}.qr-range-field>span{display:flex;justify-content:space-between;margin-bottom:.35rem}.qr-range-field strong{color:var(--text);font-weight:650}.qr-range-field input{width:100%;accent-color:var(--accent-cyan)}.qr-select-field>span{display:block;margin-bottom:.35rem}.qr-color-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.65rem;gap:.65rem;margin-top:.7rem}.qr-color-field>span:first-child{display:block;margin-bottom:.35rem}.qr-color-field>span:last-child{display:flex;align-items:center;gap:.45rem;height:36px;padding:.2rem .45rem .2rem .25rem;border:1px solid var(--border);border-radius:8px;background:var(--editor-bg)}.qr-color-field input[type=color]{width:31px;height:27px;padding:1px;border:0;border-radius:6px;background:transparent;cursor:pointer}.qr-color-field code{color:var(--text);font-size:.78rem}.qr-preview{display:flex;flex-direction:column;align-items:stretch}.qr-preview-heading{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.78rem}.qr-preview-heading>div{color:var(--text);font-weight:650}.qr-export-size,.qr-preview-heading>div{display:flex;align-items:center;gap:.4rem}.qr-export-size{color:var(--muted);font-size:.7rem}.qr-export-size select{width:auto;min-width:132px;padding:.34rem 1.75rem .34rem .5rem;border-radius:7px;font-size:.72rem}.qr-live-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px color-mix(in srgb,#22c55e 15%,transparent)}.qr-canvas-stage{display:grid;width:min(100%,300px);aspect-ratio:1;place-items:center;align-self:center;margin:.75rem 0 .6rem;padding:.75rem;overflow:hidden;border:1px solid var(--border);border-radius:14px;background-color:var(--surface-2);background-image:radial-gradient(color-mix(in srgb,var(--muted) 20%,transparent) .7px,transparent .7px);background-size:12px 12px}.qr-canvas-stage canvas{display:block;width:100%!important;height:auto!important;max-width:272px;border-radius:5px;box-shadow:0 8px 22px rgba(20,12,28,.1)}.qr-scan-hint{display:flex;justify-content:center;align-items:center;gap:.35rem;margin:0 0 .7rem;color:var(--muted);font-size:.72rem;text-align:center}.qr-scan-hint .material-symbols-rounded{font-size:1.05rem}.qr-downloads{display:grid;grid-template-columns:1fr 1fr;grid-gap:.55rem;gap:.55rem}.qr-downloads .btn{width:100%}.qr-option-label{display:block;margin:.8rem 0 .38rem;color:var(--text);font-size:.78rem;font-weight:700}.qr-corner-grid,.qr-style-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:.35rem;gap:.35rem}.qr-corner-grid button,.qr-style-grid button{display:grid;place-items:center;grid-gap:.2rem;gap:.2rem;min-width:0;padding:.42rem .1rem .3rem;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);font:inherit;font-size:.61rem;cursor:pointer}.qr-corner-grid button.active,.qr-corner-grid button:hover,.qr-logo-grid button.active,.qr-style-grid button.active,.qr-style-grid button:hover{border-color:var(--accent);color:var(--text);box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.qr-pattern-swatch{width:25px;height:25px;background-color:var(--text);background-image:radial-gradient(var(--surface) 1.2px,transparent 1.4px);background-size:7px 7px}.qr-pattern-swatch.rounded{border-radius:5px}.qr-pattern-swatch.dots{border-radius:50%;background-image:radial-gradient(var(--surface) 1.6px,transparent 1.8px)}.qr-pattern-swatch.diamond{transform:rotate(45deg) scale(.72)}.qr-pattern-swatch.classy{border-radius:10px 2px}.qr-pattern-swatch.fluid{border-radius:10px}.qr-corner-swatch{width:25px;height:25px;border:5px solid var(--text);box-shadow:inset 0 0 0 4px var(--surface-2);background:var(--text)}.qr-corner-swatch.rounded,.qr-corner-swatch.soft{border-radius:6px}.qr-corner-swatch.dot,.qr-corner-swatch.ring{border-radius:50%}.qr-corner-swatch.leaf{border-radius:9px 0}.qr-palette>span{display:block;margin-bottom:.35rem;color:var(--muted);font-size:.76rem}.qr-swatches{display:flex;flex-wrap:wrap;gap:.28rem}.qr-swatches button,.qr-swatches label{position:relative;display:grid;width:24px;height:24px;place-items:center;padding:0;border:1px solid color-mix(in srgb,var(--border) 80%,#777);border-radius:50%;cursor:pointer}.qr-swatches button.active:after{position:absolute;inset:-3px;border:2px solid var(--accent);border-radius:50%;content:""}.qr-swatches label{background:conic-gradient(#f44,#fc0,#2c6,#28f,#c4f,#f44);color:#fff}.qr-swatches label input{position:absolute;width:1px;height:1px;opacity:0}.qr-swatches label .material-symbols-rounded{font-size:15px;text-shadow:0 1px 2px #0008}.qr-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.35rem;gap:.35rem}.qr-logo-grid button{display:flex;min-width:0;align-items:center;gap:.3rem;padding:.32rem;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--muted);font:inherit;font-size:.66rem;cursor:pointer}.qr-logo-grid button>span{display:grid;width:23px;height:23px;flex:0 0 23px;place-items:center;border-radius:6px;background-position:50%;background-size:cover;font-weight:800}.qr-logo-grid button>span svg{display:block;width:15px;height:15px}.qr-file-input{display:none}.qr-upload{width:100%;margin-top:.45rem}.qr-upload-note{margin:.3rem 0 0;color:var(--muted);font-size:.65rem;text-align:center}.qr-advanced{margin-top:.75rem;border-top:1px solid var(--border)}.qr-advanced summary{padding:.65rem 0 .2rem;color:var(--muted);font-size:.75rem;cursor:pointer}.qr-advanced .qr-settings-grid{margin-top:.55rem}@media (max-width:800px){.qr-layout{grid-template-columns:1fr}.qr-preview{position:static}}@media (max-width:480px){.qr-controls,.qr-preview{padding:1rem}.qr-settings-grid{grid-template-columns:1fr}.qr-presets{grid-template-columns:repeat(2,1fr)}.qr-downloads{grid-template-columns:1fr}.qr-corner-grid,.qr-style-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:760px){.split{grid-template-columns:1fr}}label.field{display:block;font-size:.85rem;color:var(--muted);margin-bottom:.35rem}input[type=number],input[type=text],select,textarea{width:100%;background:var(--editor-bg);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:.6rem .7rem;font-family:var(--mono);font-size:.9rem;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}textarea.code{min-height:340px;white-space:pre}.json-panels{align-items:stretch}@media (min-width:761px){.wide-tool{width:calc(100vw - 3rem);max-width:1500px;position:relative;left:50%;transform:translateX(-50%)}}.json-panel{min-width:0}.json-panel textarea.code{height:min(58vh,560px);min-height:360px;resize:vertical}.json-toolbar{align-items:center}.json-action-group{display:flex;flex-wrap:wrap;gap:.5rem}.json-panel-heading{display:flex;align-items:center;justify-content:space-between;min-height:2.2rem;gap:.5rem}.json-panel-heading .field{margin:0}.json-panel-heading>div{display:flex;gap:.4rem}.btn.compact{padding:.38rem .6rem;min-height:0;font-size:.78rem}.btn:disabled{cursor:not-allowed;opacity:.5}.uuid-copy-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:112px}.uuid-copy-btn .material-symbols-rounded{font-size:1.05rem}.uuid-copy-btn.copied{border-color:var(--accent);background:var(--accent);color:#fff}.uuid-copy-status{min-height:1.6rem;margin:.25rem 0 .4rem;color:var(--muted);font-size:.85rem}.uuid-copy-status.copied{color:var(--accent);font-weight:650}.uuid-copy-status.error{color:var(--danger)}.markdown-guide{margin-bottom:1rem;padding:.7rem .85rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.markdown-guide summary{cursor:pointer;font-weight:600}.markdown-guide-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:.65rem;gap:.65rem;margin-top:.8rem}.markdown-guide-grid div{display:flex;min-width:0;flex-direction:column;gap:.25rem}.markdown-guide-grid strong{font-size:.8rem;color:var(--muted)}.markdown-guide-grid code{overflow-x:auto;padding:.35rem .45rem;border-radius:5px;background:var(--surface-2);white-space:nowrap}@media (max-width:900px){.markdown-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.markdown-guide-grid{grid-template-columns:1fr}}.icon-generator-tool .tool-header{display:flex;align-items:baseline;gap:.8rem;margin-bottom:.45rem}.icon-generator-tool .tool-header h1{flex:none;margin:0;font-size:1.25rem;line-height:1.2}.icon-generator-tool .tool-header p{margin:0;font-size:.8rem}.icon-targets{display:flex;align-items:stretch;gap:.45rem;margin-bottom:.55rem}.icon-targets>button:not(.icon-download){min-width:88px;min-height:38px;display:flex;align-items:center;gap:.4rem;padding:.3rem .5rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font-size:.82rem;cursor:pointer}.icon-targets>button.active{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 18%,transparent)}.target-preview{width:25px;height:25px;flex:0 0 25px;display:flex;align-items:center;justify-content:center;background:var(--accent);color:#fff}.target-android{border-radius:9px}.target-ios{border-radius:7px}.target-web{border-radius:50%}.icon-download{margin-left:auto;padding:.35rem .7rem!important;font-size:.8rem!important}.icon-generator-layout{display:grid;grid-template-columns:minmax(320px,400px) 1fr;grid-gap:1rem;gap:1rem;min-height:650px}.icon-controls{padding:0}.icon-controls section{padding:1rem;border-top:2px solid var(--border)}.icon-controls section:first-child{border-top:0}.icon-controls h2{margin:0 0 .75rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.segmented{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:3px;gap:3px;padding:3px;margin-bottom:.8rem;border-radius:8px;background:var(--surface-2)}.segmented button{border:0;border-radius:6px;padding:.45rem;background:transparent;color:var(--muted);cursor:pointer}.segmented button.active{background:var(--surface);color:var(--accent-hover);box-shadow:var(--shadow)}.symbol-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:.35rem;gap:.35rem;max-height:190px;margin-bottom:.85rem;padding-right:.2rem;overflow-y:auto}.symbol-grid button{aspect-ratio:1;border:1px solid var(--border);border-radius:7px;background:var(--bg);color:var(--text);font-size:1.1rem;cursor:pointer}.symbol-grid button.active{color:var(--accent-hover);border-color:var(--accent);background:var(--surface-2)}.symbol-grid .material-symbols-rounded{display:block;font-size:21px}.pictorial-grid{display:grid;grid-template-columns:repeat(8,1fr);grid-gap:.35rem;gap:.35rem;max-height:190px;margin-bottom:.85rem;padding-right:.2rem;overflow-y:auto}.pictorial-grid button{display:grid;aspect-ratio:1;place-items:center;padding:0;border:1px solid var(--border);border-radius:7px;background:var(--bg);cursor:pointer}.pictorial-grid button span{font-size:1.25rem;line-height:1;filter:saturate(.92);transition:transform .15s}.pictorial-grid button:hover span{transform:scale(1.15)}.pictorial-grid button.active{border-color:var(--accent-cyan);background:color-mix(in srgb,var(--accent-cyan) 10%,var(--surface-2));box-shadow:0 0 0 2px color-mix(in srgb,var(--accent-cyan) 18%,transparent)}.target-preview>.material-symbols-rounded{display:block;width:1em;height:1em;font-size:17px;line-height:1;text-align:center}.color-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:.65rem;gap:.65rem}.color-field{display:block;margin-top:.65rem;font-size:.8rem;color:var(--muted)}.color-field>span:last-child{display:flex;align-items:center;gap:.35rem;margin-top:.3rem}.color-field input[type=color]{width:38px;height:35px;padding:2px;border:1px solid var(--border);border-radius:7px;background:var(--bg)}.color-field input[type=text]{min-width:0;padding:.45rem}.range-field{display:block;margin-top:.8rem;font-size:.8rem;color:var(--muted)}.range-field>span{display:flex;justify-content:space-between}.range-field b{color:var(--text);font-weight:500}.range-field input{width:100%;accent-color:var(--accent-cyan)}.check-row{display:flex;align-items:center;gap:.45rem;font-size:.9rem}.shape-options{display:grid;grid-template-columns:repeat(4,42px);grid-gap:.6rem;gap:.6rem}.shape-options button{width:40px;height:40px;border:2px solid var(--border);background:var(--accent);cursor:pointer}.shape-options button.active{outline:3px solid color-mix(in srgb,var(--accent) 25%,transparent);border-color:var(--text)}.shape-square{border-radius:2px}.shape-rounded{border-radius:9px}.shape-squircle{border-radius:14px}.shape-circle{border-radius:50%}.icon-preview-area{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:.75rem 2rem 2rem;border:1px solid var(--border);border-radius:var(--radius);background-color:var(--surface-2);background-image:linear-gradient(45deg,color-mix(in srgb,var(--border) 45%,transparent) 25%,transparent 25%),linear-gradient(-45deg,color-mix(in srgb,var(--border) 45%,transparent) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,color-mix(in srgb,var(--border) 45%,transparent) 75%),linear-gradient(-45deg,transparent 75%,color-mix(in srgb,var(--border) 45%,transparent) 75%);background-size:24px 24px;background-position:0 0,0 12px,12px -12px,-12px 0}.icon-preview-stage{width:min(52vw,480px);max-width:100%;aspect-ratio:1}.icon-preview-stage canvas{width:100%;height:100%;display:block;filter:drop-shadow(0 18px 26px rgba(0,0,0,.18))}.icon-size-preview{display:flex;align-items:center;gap:.6rem;margin-top:1.5rem;padding:.55rem .75rem;border-radius:10px;background:var(--surface);box-shadow:var(--shadow)}.icon-size-preview canvas{width:48px;height:48px}.icon-size-preview span{color:var(--muted);font-size:.8rem}.icon-master-canvas{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.device{position:relative;width:min(360px,78vw);height:690px;padding:10px;border:4px solid #11151d;border-radius:48px;background:linear-gradient(145deg,#323844,#07090d 40%,#252b35);box-shadow:0 30px 65px rgba(0,0,0,.3),inset 0 0 0 2px #555d6a}.device-screen{position:relative;width:100%;height:100%;overflow:hidden;border-radius:35px}.android-screen{color:#123047;background:linear-gradient(#b9e2f7 0 54%,#eed0aa 54% 72%,#c98f67)}.android-screen:after{content:"";position:absolute;inset:55% -10% -5%;background:linear-gradient(155deg,transparent 0 20%,rgba(120,72,46,.35) 21% 35%,transparent 36%),linear-gradient(25deg,#dba77b,#9f694a);-webkit-clip-path:polygon(0 42%,15% 20%,31% 37%,47% 8%,63% 34%,80% 15%,100% 32%,100% 100%,0 100%);clip-path:polygon(0 42%,15% 20%,31% 37%,47% 8%,63% 34%,80% 15%,100% 32%,100% 100%,0 100%)}.phone-speaker{position:absolute;z-index:4;top:18px;left:50%;width:54px;height:6px;transform:translateX(-50%);border-radius:9px;background:#090b0f}.device-status{position:relative;z-index:3;display:flex;justify-content:space-between;padding:16px 22px;font-size:11px;font-weight:700}.android-widget{position:relative;z-index:2;display:flex;flex-direction:column;gap:.25rem;margin:55px 30px 70px}.android-widget strong{font-size:1.15rem}.android-widget span{font-size:.75rem}.android-apps,.ios-apps{position:relative;z-index:3;display:grid;grid-template-columns:repeat(5,1fr);grid-gap:.45rem;gap:.45rem;padding:0 17px}.mock-app{min-width:0;display:flex;flex-direction:column;align-items:center;gap:5px;color:inherit;font-size:9px;font-weight:700;text-align:center}.mock-app canvas,.mock-app i{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;color:#335;font-style:normal;font-size:22px;box-shadow:0 3px 8px rgba(0,0,0,.16)}.generated-app canvas{object-fit:contain}.phone-gesture{position:absolute;z-index:5;bottom:8px;left:50%;width:110px;height:4px;transform:translateX(-50%);border-radius:4px;background:rgba(10,15,20,.75)}.ios-screen{color:#fff;background:radial-gradient(circle at 25% 15%,#fa8cb2,transparent 35%),radial-gradient(circle at 80% 35%,#725cff,transparent 40%),linear-gradient(145deg,#273972,#10182d)}.dynamic-island{position:absolute;z-index:5;top:11px;left:50%;width:104px;height:29px;transform:translateX(-50%);border-radius:18px;background:#050505}.ios-date{margin:38px 0 72px;text-align:center;font-size:1.3rem;font-weight:600}.ios-apps{grid-template-columns:repeat(4,1fr);padding:0 25px}.ios-apps .mock-app canvas,.ios-apps .mock-app i{border-radius:13px}.ios-dock{position:absolute;left:18px;right:18px;bottom:24px;display:flex;justify-content:space-around;padding:13px;border-radius:26px;background:hsla(0,0%,100%,.22);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ios-dock span{width:48px;height:48px;border-radius:13px;background:hsla(0,0%,100%,.72)}.browser-preview{width:min(850px,94%);min-height:520px;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:0 30px 70px rgba(0,0,0,.18)}.browser-chrome{display:flex;align-items:center;gap:7px;padding:.75rem;border-bottom:1px solid var(--border);background:var(--surface-2)}.browser-chrome i{width:11px;height:11px;border-radius:50%;background:#ef4444}.browser-chrome i:nth-child(2){background:#eab308}.browser-chrome i:nth-child(3){background:#22c55e}.browser-chrome span{flex:1 1;margin-left:.65rem;padding:.42rem .7rem;border-radius:7px;background:var(--bg);color:var(--muted);font-size:.75rem}.browser-page{padding:2rem 3rem;color:var(--text);background:linear-gradient(145deg,var(--surface),var(--surface-2))}.browser-brand{display:flex;align-items:center;gap:.65rem}.browser-brand canvas{width:34px;height:34px}.browser-page h2{margin:1.5rem 0 .5rem;font-size:clamp(1.8rem,4vw,3rem)}.browser-page p{color:var(--muted)}.web-icon-sizes{display:flex;align-items:flex-end;gap:1rem;margin-top:3rem}.web-icon-sizes canvas{width:auto;border-radius:20%;box-shadow:var(--shadow)}.preview-meta{display:flex;flex-direction:column;align-items:center;gap:.2rem;margin-top:1rem;padding:.55rem .85rem;border-radius:9px;background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.preview-meta span{color:var(--muted);font-size:.75rem}@media (max-width:850px){.icon-generator-layout{grid-template-columns:1fr}.icon-generator-layout .scrollable-editing-panel{max-height:none;overflow:visible}.icon-generator-layout .persistent-output-panel{position:static;max-height:none;overflow:visible}.icon-preview-area{min-height:520px}.icon-targets{overflow-x:auto}.icon-download{margin-left:0;white-space:nowrap}}@media (max-width:620px){.icon-generator-tool .tool-header{display:block}.icon-generator-tool .tool-header p{margin-top:.2rem}.icon-targets>button:not(.icon-download){min-width:76px}.icon-preview-area{padding:1rem;min-height:400px}.segmented button{padding-inline:.2rem;font-size:.78rem}.pictorial-grid,.symbol-grid{grid-template-columns:repeat(6,1fr)}.device{height:620px}.mock-app canvas,.mock-app i{width:42px;height:42px}.browser-page{padding:1.25rem}.web-icon-sizes{transform:scale(.8);transform-origin:left bottom}}.toolbar{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:.6rem}button.btn,label.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:7px;padding:.52rem .82rem;font-size:.88rem;font-weight:560;letter-spacing:-.006em;cursor:pointer;box-shadow:0 1px 1px rgba(20,12,28,.04);transition:background .15s,border-color .15s,transform .12s,box-shadow .15s}button.btn>.material-symbols-rounded,label.btn>.material-symbols-rounded{flex:0 0 auto;font-size:1.2rem}.tool-card .icon.material-symbols-rounded{font-family:Material Symbols Rounded;font-size:1.5rem;font-weight:400;letter-spacing:normal}button.btn:hover,label.btn:hover{border-color:color-mix(in srgb,var(--text) 18%,var(--border));background:color-mix(in srgb,var(--text) 7%,var(--surface-2))}button.btn:active,label.btn:active{transform:translateY(1px);box-shadow:none}button.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 1px 2px color-mix(in srgb,var(--accent) 35%,transparent)}button.btn.primary:hover{background:var(--accent-hover)}button.btn:disabled{opacity:.5;cursor:not-allowed}.file-upload-btn{display:inline-flex;align-items:center;cursor:pointer}.file-upload-btn input[type=file]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.status{font-size:.85rem;padding:.4rem 0;min-height:1.4rem}.status.error{color:var(--danger)}.status.ok{color:var(--ok)}.hint{color:var(--muted);font-size:.85rem}.preview{background:var(--editor-bg);border:1px solid var(--border);border-radius:8px;padding:1rem;min-height:340px;overflow:auto}.preview :first-child{margin-top:0}.preview pre{background:var(--surface-2);padding:.75rem;border-radius:6px;overflow:auto}.preview code,.yaml-preview{font-family:var(--mono)}.yaml-preview{margin:0;min-height:340px;white-space:pre-wrap;font-size:.86rem}.dropzone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;min-height:230px;border:1.5px dashed color-mix(in srgb,var(--accent-cyan) 52%,var(--border));border-radius:18px;padding:2.25rem 1.5rem;text-align:center;color:var(--muted);cursor:pointer;overflow:hidden;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--accent) 10%,transparent),transparent 52%),color-mix(in srgb,var(--surface-2) 55%,var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 40%,transparent),0 8px 28px rgba(20,12,28,.05);transition:border-color .2s,background .2s,transform .2s,box-shadow .2s}.dropzone.drag,.dropzone:focus-visible,.dropzone:hover{border-color:var(--accent);background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--accent) 17%,transparent),transparent 58%),color-mix(in srgb,var(--accent) 5%,var(--surface));box-shadow:0 12px 32px color-mix(in srgb,var(--accent) 12%,transparent);transform:translateY(-2px);outline:none}.dropzone-icon{display:flex;width:58px;height:58px;flex:0 0 58px;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--accent-cyan) 30%,var(--border));border-radius:16px;color:var(--accent);background:color-mix(in srgb,var(--accent-cyan) 10%,var(--surface));box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 12%,transparent);transition:transform .2s,background .2s}.dropzone-icon>.material-symbols-rounded{display:block;width:1em;height:1em;font-size:1.8rem;line-height:1;text-align:center}.dropzone.drag .dropzone-icon,.dropzone:hover .dropzone-icon{transform:translateY(-3px) scale(1.04);background:color-mix(in srgb,var(--accent) 16%,var(--surface))}.dropzone.preparing{cursor:progress;border-style:solid;border-color:color-mix(in srgb,var(--accent) 70%,var(--border));transform:translateY(-2px)}.dropzone.preparing .dropzone-icon{animation:file-prepare-spin .75s cubic-bezier(.55,.1,.45,.9) infinite}.dropzone-copy{display:grid;grid-gap:.2rem;gap:.2rem}.dropzone p{margin:0}.dropzone-label{color:var(--text);font-size:1rem;font-weight:700}.dropzone-filename{max-width:min(420px,76vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropzone-action{margin-top:.2rem;padding:.48rem .85rem;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--border));border-radius:999px;color:var(--accent);background:var(--surface);font-size:.8rem;font-weight:700;box-shadow:0 2px 8px rgba(20,12,28,.06)}.dropzone-progress{width:min(240px,72%);height:6px;margin-top:.25rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 15%,var(--surface-2))}.dropzone-progress span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--accent-cyan));transform-origin:left;animation:file-prepare-progress .65s cubic-bezier(.2,.75,.25,1) both}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes file-prepare-spin{to{transform:rotate(1turn)}}@keyframes file-prepare-progress{0%{transform:scaleX(.04);opacity:.6}72%{transform:scaleX(.82);opacity:1}to{transform:scaleX(1);opacity:1}}@media (prefers-reduced-motion:reduce){.dropzone-progress span,.dropzone.preparing .dropzone-icon{animation:none}}input[type=file]:not([hidden]){width:100%;padding:.38rem;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--surface-2) 65%,var(--surface));box-shadow:inset 0 1px 0 color-mix(in srgb,#fff 35%,transparent)}input[type=file]::-webkit-file-upload-button{margin-right:.75rem;padding:.62rem .9rem;border:0;border-radius:9px;color:#fff;background:var(--accent);font:inherit;font-weight:700;cursor:pointer;-webkit-transition:background .15s,transform .12s;transition:background .15s,transform .12s}input[type=file]::file-selector-button{margin-right:.75rem;padding:.62rem .9rem;border:0;border-radius:9px;color:#fff;background:var(--accent);font:inherit;font-weight:700;cursor:pointer;transition:background .15s,transform .12s}input[type=file]::-webkit-file-upload-button:hover{background:var(--accent-hover)}input[type=file]::file-selector-button:hover{background:var(--accent-hover)}.loaded-file{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;padding:.72rem .85rem;min-width:0;border:1px solid color-mix(in srgb,var(--accent) 25%,var(--border));border-radius:13px;background:color-mix(in srgb,var(--accent) 5%,var(--surface));box-shadow:0 3px 12px rgba(20,12,28,.04);animation:loaded-file-in .28s ease-out both}.loaded-file-icon{display:grid;flex:0 0 38px;width:38px;height:38px;place-items:center;border-radius:10px;color:var(--accent);background:color-mix(in srgb,var(--accent) 11%,var(--surface-2));font-size:1.3rem}.loaded-file-copy{display:grid;min-width:0;grid-gap:.08rem;gap:.08rem;flex:1 1}.loaded-file-copy strong{overflow:hidden;color:var(--text);font-size:.9rem;text-overflow:ellipsis;white-space:nowrap}.loaded-file-label{color:var(--muted);font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.loaded-file-detail{flex:0 0 auto;color:var(--muted);font-size:.78rem}.loaded-file-check{flex:0 0 auto;color:var(--ok);font-size:1.25rem}@keyframes loaded-file-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.controls-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:flex-end;margin:.6rem 0}.plotter-expression{flex:2 1 240px;min-width:200px}.plotter-number{flex:0 0 96px;min-width:84px}.plotter-action{min-width:0}.plotter-result{flex:1 1 120px;min-width:120px}.native-app .plotter-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:.35rem 0 .55rem}.native-app .plotter-controls .plotter-expression{grid-column:1/-1}.native-app .plotter-controls .plotter-action,.native-app .plotter-controls .plotter-expression,.native-app .plotter-controls .plotter-number,.native-app .plotter-controls .plotter-result{width:auto;min-width:0}.native-app .plotter-controls .plotter-action{grid-column:1}.native-app .plotter-controls .plotter-action .btn{width:100%}.native-app .plotter-controls .plotter-result{grid-column:2/-1;align-self:center}.native-app .plotter-controls label.field{min-height:1.1rem;margin-bottom:.25rem}.native-app .plotter-controls input{width:100%}.preset-chips{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin:0 0 .6rem}.preset-label{font-size:.8rem;color:var(--muted);margin-right:.1rem}.chip{font-family:var(--mono);font-size:.8rem;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:999px;padding:.2rem .6rem;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.chip:hover{color:var(--accent-hover)}.chip.active,.chip:hover{border-color:var(--accent)}.chip.active{background:var(--accent);color:#fff}.controls-row>div{min-width:120px}.result-card{margin-top:1rem;padding:1rem;border-radius:10px;background:var(--surface-2);color:var(--accent-hover);font-size:1.35rem;font-weight:700;overflow-wrap:anywhere}.table-wrap{max-height:390px;overflow:auto;margin-top:.75rem;border:1px solid var(--border);border-radius:8px}.data-table{width:100%;border-collapse:collapse;font-size:.82rem}.data-table td,.data-table th{padding:.5rem .65rem;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}.data-table th{position:-webkit-sticky;position:sticky;top:0;background:var(--surface-2);color:var(--text)}.data-table td{color:var(--muted)}.image-preview-canvas{display:block;max-width:100%;max-height:420px;margin:0 auto 1rem;border:1px solid var(--border);border-radius:var(--radius);object-fit:contain}.scanner-capture{margin-bottom:1rem;position:relative;overflow:hidden}.scanner-camera{max-width:760px;margin:0 auto}.scanner-camera-stage{position:relative;overflow:hidden;border-radius:14px;background:#050505;line-height:0}.scanner-video{display:block;width:100%;max-height:68vh;background:#050505;object-fit:contain}.scanner-video-status{position:absolute;inset:0;display:grid;place-items:center;color:#fff;background:#111;pointer-events:none;line-height:1.5}.scanner-edge-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.scanner-edge-overlay polygon{fill:rgba(8,168,199,.12);stroke:#22d3ee;stroke-width:.65;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px rgba(8,168,199,.85))}.scanner-detection{position:absolute;top:12px;left:50%;transform:translateX(-50%);padding:.45rem .75rem;border-radius:999px;background:rgba(0,0,0,.62);color:#fff;font-size:.78rem;line-height:1;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.scanner-detection.found{background:rgba(5,110,76,.82)}.scanner-shutter{position:absolute;left:50%;bottom:18px;transform:translateX(-50%);width:74px;height:74px;padding:5px;border:4px solid #fff;border-radius:50%;background:rgba(0,0,0,.22);cursor:pointer;box-shadow:0 3px 18px rgba(0,0,0,.45)}.scanner-shutter span{display:block;width:100%;height:100%;border-radius:50%;background:#fff;transition:transform .1s,background .1s}.scanner-shutter.capturing span,.scanner-shutter:active span{transform:scale(.78);background:#22d3ee}.scanner-shutter:disabled{opacity:.5;cursor:wait}.scanner-camera-close{position:absolute;top:10px;right:10px;width:38px;height:38px;border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;cursor:pointer;font-size:1rem;line-height:1}.scanner-flash{position:absolute;inset:0;z-index:5;background:#fff;pointer-events:none;animation:scanner-flash .18s ease-out forwards}@keyframes scanner-flash{0%{opacity:.9}to{opacity:0}}.scanner-capture-notice{position:absolute;z-index:6;left:50%;top:50%;transform:translate(-50%,-50%);padding:.75rem 1rem;border-radius:10px;background:rgba(0,0,0,.78);color:#fff;font-weight:700;line-height:1.2;white-space:nowrap}.scanner-camera-caption{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:.75rem;gap:.75rem;align-items:center;padding:.8rem .25rem 0;color:var(--muted);font-size:.8rem}.scanner-camera-caption strong{color:var(--text);text-align:center}.scanner-camera-caption span:last-child{text-align:right}.scanner-page-chip{display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid var(--border);border-radius:8px;background:var(--surface-2)}.scanner-page-chip.active{border-color:var(--accent);background:var(--accent)}.scanner-page-remove,.scanner-page-select{border:0;background:transparent;color:var(--text);cursor:pointer;font:inherit;padding:.48rem .7rem}.scanner-page-remove{padding-inline:.55rem;opacity:.72;border-left:1px solid var(--border)}.scanner-page-chip.active button{color:#fff}.scanner-page-remove:hover{opacity:1;background:color-mix(in srgb,var(--danger) 22%,transparent)}.scanner-preview-panel{display:grid;place-items:center;min-width:0;overflow:hidden}.scanner-canvas-wrap{position:relative;display:inline-flex;max-width:100%;line-height:0}.scanner-canvas-wrap canvas{display:block;max-width:100%;height:auto}.scanner-crop-box{z-index:2;cursor:move;touch-action:none}.scanner-crop-handle{position:absolute;width:30px;height:30px;padding:0;border:3px solid #fff;border-radius:50%;background:#2563eb;box-shadow:0 2px 9px rgba(0,0,0,.45);touch-action:none}.scanner-crop-handle.nw{left:-16px;top:-16px;cursor:nwse-resize}.scanner-crop-handle.ne{right:-16px;top:-16px;cursor:nesw-resize}.scanner-crop-handle.se{right:-16px;bottom:-16px;cursor:nwse-resize}.scanner-crop-handle.sw{left:-16px;bottom:-16px;cursor:nesw-resize}.scanner-crop-hint{position:absolute;left:50%;bottom:12px;transform:translateX(-50%);padding:.45rem .7rem;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:.75rem;line-height:1;white-space:nowrap;pointer-events:none}@media (max-width:760px){.scanner-capture{padding:0;border:0;background:#050505;border-radius:0;margin-inline:calc(50% - 50vw)}.scanner-camera{max-width:none}.scanner-camera-stage{border-radius:0;min-height:min(66vh,620px);display:grid;place-items:center}.scanner-video{width:100%;max-height:min(66vh,620px)}.scanner-camera-caption{padding:.8rem 1rem 1rem;background:var(--surface);grid-template-columns:1fr 1fr}.scanner-camera-caption strong{grid-column:1/-1;grid-row:1}.scanner-camera-caption span:last-child{text-align:right}.scanner-shutter{width:78px;height:78px;bottom:22px}.scanner-preview-panel{padding:.5rem}.scanner-page-chip{flex:0 0 auto}.scanner-capture+.drop-zone{margin-top:1rem}}.organizer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));grid-gap:.75rem;gap:.75rem;margin-bottom:1rem}.organizer-page{padding:.65rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);text-align:center}.page-paper{width:68px;height:88px;display:grid;place-items:center;margin:0 auto .55rem;background:#fff;color:#312e42;border:1px solid #d9d5e3;border-radius:3px;box-shadow:0 3px 8px rgba(0,0,0,.16);transition:transform .15s}.mini-actions{display:flex;justify-content:center;gap:3px;margin-top:.5rem}.mini-actions button{width:25px;height:25px;border:1px solid var(--border);border-radius:5px;color:var(--text);background:var(--surface-2);cursor:pointer}.mini-actions button:disabled{opacity:.35}input[type=date],input[type=file]{max-width:100%;color:var(--text);font:inherit}.emi-field{margin-top:1.15rem}.emi-results{display:flex;flex-direction:column;justify-content:center}.emi-primary{margin:.2rem 0 1.25rem;color:var(--accent-cyan);font-size:clamp(1.8rem,5vw,2.65rem);font-weight:750;line-height:1.1}.emi-breakdown{display:grid;grid-gap:.7rem;gap:.7rem}.emi-breakdown>div{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.emi-breakdown span{color:var(--muted)}.emi-bar{display:flex;height:12px;margin-top:1.3rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 34%,var(--surface-2))}.emi-bar span{display:block;background:var(--accent)}.emi-legend{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem;margin-top:.6rem;color:var(--muted);font-size:.78rem}.emi-legend i{display:inline-block;width:9px;height:9px;margin-right:4px;border-radius:50%;background:color-mix(in srgb,var(--accent) 34%,var(--surface-2))}.emi-legend i.principal{background:var(--accent)}.emi-download{align-self:flex-start;margin-top:1.15rem}.finance-inputs{display:flex;flex-direction:column}.finance-inputs label.field:not(:first-child){margin-top:1rem}.finance-results{display:flex;flex-direction:column;justify-content:center}.finance-primary{margin:.25rem 0 1.25rem;color:var(--accent-cyan);font-size:clamp(1.8rem,5vw,2.6rem);font-weight:750;line-height:1.12;overflow-wrap:anywhere}.finance-primary.small{font-size:clamp(1.35rem,3vw,1.85rem)}.finance-primary.negative{color:var(--danger)}.finance-breakdown{display:grid;grid-gap:.7rem;gap:.7rem}.finance-breakdown>div{display:flex;justify-content:space-between;gap:1rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}.finance-breakdown span{color:var(--muted)}.finance-breakdown strong{text-align:right}.finance-bar{display:flex;height:11px;margin-top:1.25rem;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 30%,var(--surface-2))}.finance-bar span{display:block;background:var(--accent)}.finance-note{margin-top:1rem}.finance-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1rem;gap:1rem;margin-top:1rem}@media (max-width:850px){.finance-summary-grid{grid-template-columns:1fr}}canvas.plot{width:100%;height:auto;background:var(--bg);border:1px solid var(--border);border-radius:8px;display:block}.plotter-export-actions{display:flex;align-items:center;gap:.55rem;margin-top:.7rem}.plotter-export-actions .btn{display:inline-flex;align-items:center;gap:.35rem}.plotter-export-actions .material-symbols-rounded{font-size:1.05rem}.plotter-export-status{margin-left:.25rem;color:var(--muted);font-size:.78rem}@media (max-width:620px){.plotter-export-actions{flex-wrap:wrap}.plotter-export-actions .btn{flex:1 1 140px}.plotter-export-status{flex:1 0 100%;margin-left:0}}.meta-line{font-size:.85rem;color:var(--muted)}.image-editor-tool{width:100vw;position:relative;left:50%;margin-left:-50vw;margin-top:-1rem;margin-bottom:-2rem;padding:0 clamp(.75rem,2vw,1.5rem)}.image-editor-shell{position:relative;max-width:1600px;height:calc(100vh - 59px);min-height:560px;margin:0 auto;overflow:hidden;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.image-editor-shell:-webkit-full-screen{width:100vw;max-width:none;height:100dvh;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none;background:#f8fafc}.image-editor-shell.focus-view,.image-editor-shell:fullscreen{width:100vw;max-width:none;height:100dvh;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none;background:#f8fafc}.image-editor-shell.focus-view{position:fixed;z-index:10000;inset:0}.image-editor-focus{overflow:hidden}.image-editor-mount{width:100%;height:100%}.editor-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);background:var(--surface);z-index:1}@media (max-width:700px){.image-editor-shell{height:calc(100dvh - 59px);min-height:500px}}.docs-layout{display:flex;gap:2rem;align-items:flex-start}.docs-sidebar{position:-webkit-sticky;position:sticky;top:4.5rem;width:230px;flex:none;max-height:calc(100vh - 6rem);overflow-y:auto}.docs-sidebar-toggle{display:none;width:100%;align-items:center;justify-content:space-between;background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:.55rem .8rem;font-size:.9rem;font-family:inherit;cursor:pointer;margin-bottom:.5rem}.docs-sidebar-nav a{display:block;padding:.35rem .6rem;border-radius:7px;color:var(--muted);font-size:.9rem}.docs-sidebar-nav a:hover{background:var(--surface-2);color:var(--text)}.docs-sidebar-nav a.active{background:var(--accent);color:#fff}.docs-cat{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:1.1rem 0 .3rem;padding-left:.6rem}.docs-main{flex:1 1;min-width:0}.docs-page-head{margin-bottom:1rem}.docs-page-head h1{margin:0 0 .4rem;font-size:1.9rem}.docs-page-head p{margin:0;color:var(--muted);max-width:640px}@media (max-width:760px){.docs-layout{flex-direction:column;gap:1rem}.docs-sidebar{position:static;width:100%;max-height:none}.docs-sidebar-toggle{display:flex}.docs-sidebar-nav{display:none;border:1px solid var(--border);border-radius:10px;padding:.5rem}.docs-sidebar-nav.open{display:block}}.doc{max-width:720px}.doc-demo{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.75rem;margin:0 0 1.5rem}.doc-demo svg{display:block;width:100%;height:auto;max-height:160px}.doc-demo [class*=dd-]{transform-box:fill-box;transform-origin:center}.dd-page{fill:var(--surface-2);stroke:var(--border);stroke-width:1.5}.dd-line{stroke:var(--muted);stroke-width:3;stroke-linecap:round}.dd-accent{fill:var(--accent)}.dd-accent-s{stroke:var(--accent);stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round}.dd-txt{fill:var(--muted);font-size:13px}.dd-txt,.dd-txt-a{font-family:var(--mono)}.dd-txt-a{fill:var(--accent);font-size:15px;font-weight:700}@keyframes dd-converge-r{0%,12%{transform:translateX(0)}50%,72%{transform:translateX(38px)}to{transform:translateX(0)}}@keyframes dd-converge-l{0%,12%{transform:translateX(0)}50%,72%{transform:translateX(-38px)}to{transform:translateX(0)}}@keyframes dd-diverge-r{0%,12%{transform:translateX(0)}50%,72%{transform:translateX(60px)}to{transform:translateX(0)}}@keyframes dd-diverge-l{0%,12%{transform:translateX(0)}50%,72%{transform:translateX(-60px)}to{transform:translateX(0)}}@keyframes dd-fade{0%,20%{opacity:0}45%,75%{opacity:1}to{opacity:0}}@keyframes dd-pop{0%,30%{opacity:0;transform:scale(.4)}55%,88%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.4)}}@keyframes dd-shrink{0%,15%{transform:scale(1)}55%,80%{transform:scale(.62)}to{transform:scale(1)}}@keyframes dd-sweep{0%{transform:translateY(-4px);opacity:0}15%{opacity:1}85%{opacity:1}to{transform:translateY(96px);opacity:0}}@keyframes dd-draw{0%,10%{stroke-dashoffset:var(--len,300)}60%,to{stroke-dashoffset:0}}@keyframes dd-swapA{0%,40%{opacity:1}50%,90%{opacity:0}to{opacity:1}}@keyframes dd-swapB{0%,40%{opacity:0}50%,90%{opacity:1}to{opacity:0}}@keyframes dd-spin{0%,20%{transform:rotate(0deg)}70%,to{transform:rotate(1turn)}}@keyframes dd-rise{0%,15%{transform:translateY(14px);opacity:0}55%,85%{transform:translateY(0);opacity:1}to{transform:translateY(14px);opacity:0}}.dd-anim{animation:3.4s ease-in-out infinite}.dd-converge-r{animation:dd-converge-r 3.4s ease-in-out infinite}.dd-converge-l{animation:dd-converge-l 3.4s ease-in-out infinite}.dd-diverge-r{animation:dd-diverge-r 3.4s ease-in-out infinite}.dd-diverge-l{animation:dd-diverge-l 3.4s ease-in-out infinite}.dd-fade{animation:dd-fade 3.4s ease-in-out infinite}.dd-pop{animation:dd-pop 3.4s ease-in-out infinite}.dd-shrink{animation:dd-shrink 3.4s ease-in-out infinite}.dd-sweep{animation:dd-sweep 2.6s ease-in-out infinite}.dd-draw{stroke-dasharray:var(--len,300);animation:dd-draw 3.4s ease-in-out infinite}.dd-swapA{animation:dd-swapA 3.4s ease-in-out infinite}.dd-swapB{animation:dd-swapB 3.4s ease-in-out infinite}.dd-spin{animation:dd-spin 3.4s ease-in-out infinite}.dd-rise{animation:dd-rise 3.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.doc-demo [class*=dd-]{animation:none!important}.doc-demo .dd-draw{stroke-dashoffset:0}.doc-demo .dd-fade,.doc-demo .dd-pop,.doc-demo .dd-rise,.doc-demo .dd-swapB{opacity:1}}.doc-crumbs{font-size:.85rem;color:var(--muted);margin-bottom:1rem}.doc-head{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.doc-head h1{margin:0;font-size:1.9rem}.doc-intro{color:var(--muted);font-size:1.05rem;margin:.5rem 0 1.25rem}.doc-cta{display:inline-block;text-decoration:none;margin-bottom:1.5rem}.doc h2{font-size:1.2rem;margin:1.75rem 0 .75rem}.doc-list,.doc-steps{padding-left:1.25rem;line-height:1.7}.doc-list li,.doc-steps li{margin-bottom:.4rem}.doc-privacy{margin-top:2rem;padding:.9rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--muted);font-size:.9rem}.doc-related{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1rem}.doc-related a{padding:.45rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--accent);text-decoration:none;font-size:.82rem}.doc-related a:hover{border-color:var(--accent)}.pill{display:inline-block;font-size:.75rem;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:.1rem .55rem;color:var(--muted)}.eyebrow{color:var(--accent-cyan)!important;font-size:.78rem!important;font-weight:750;letter-spacing:.12em}.popular-section{margin:0 auto 2.25rem;text-align:center}.popular-section h2{font-size:1.05rem;margin-bottom:.8rem}.popular-links{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem}.popular-links a{padding:.45rem .75rem;border:1px solid var(--border);background:var(--surface);border-radius:999px;color:var(--text);text-decoration:none;font-size:.88rem}.popular-links a:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:620px){.content{overflow-x:clip;padding-left:1rem;padding-right:1rem}.hero{padding:1.45rem 0 .9rem}.hero h1{font-size:clamp(1.8rem,9vw,2.15rem)}.tool-search{margin:.35rem auto 1.85rem}.tool-search input[type=text]{padding-left:3rem;font-size:1rem}.tool-search-icon{left:1.05rem}.category-filters{justify-content:flex-start;margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}.popular-section{margin:.35rem 0 1.25rem;text-align:left}.popular-section h2{margin-bottom:.55rem}.popular-links{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:none}.popular-links::-webkit-scrollbar{display:none}.popular-links a{flex:0 0 auto}.cat-title{margin-top:1.35rem}.json-toolbar{align-items:stretch}.json-action-group{width:100%}.json-action-group .btn{flex:1 1}.json-toolbar>.hint{margin-left:0!important;flex:1 1}}.cat-title a{color:inherit;text-decoration:none}.cat-title a:hover{color:var(--accent)}.home-seo{max-width:920px;margin:4rem auto 1rem;padding-top:2.5rem;border-top:1px solid var(--border);line-height:1.7}.home-seo>p{color:var(--muted)}.home-benefits,.home-faq{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin:1.5rem 0 3rem}.home-benefits>div,.home-faq>div{padding:1rem 1.1rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.home-benefits h3,.home-faq h3{font-size:1rem;margin:0 0 .45rem}.home-benefits p,.home-faq p{color:var(--muted);font-size:.9rem;margin:0}.tool-breadcrumbs{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.84rem;margin:.35rem 0 .65rem}.tool-breadcrumbs a{color:var(--muted);text-decoration:none}.tool-breadcrumbs a:hover{color:var(--accent)}.tool-seo{max-width:920px;margin:4rem auto 1rem;padding-top:2rem;border-top:1px solid var(--border)}.tool-seo>p{color:var(--muted);line-height:1.7}.tool-seo h2{font-size:1.2rem;margin:1.5rem 0 .75rem}.related-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.8rem;gap:.8rem}.related-tools a{display:flex;flex-direction:column;gap:.3rem;padding:.9rem 1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none}.related-tools a:hover{border-color:var(--accent)}.related-tools span{color:var(--muted);font-size:.84rem}.category-page{max-width:1050px;margin:0 auto}.category-page header{margin:1.5rem 0 2rem}.category-page header p{color:var(--muted);font-size:1.05rem}.category-page .tool-card h2{font-size:1.05rem;margin:0}.site-footer{display:grid;grid-template-columns:1.5fr 1fr 1fr;grid-gap:2.5rem;gap:2.5rem;margin-top:5rem;padding:2.5rem max(1.25rem,calc((100vw - 1200px) / 2));border-top:1px solid var(--border);background:var(--surface)}.site-footer h2{font-size:.86rem;margin:0 0 .8rem}.site-footer p{color:var(--muted);font-size:.88rem}.site-footer>div{display:flex;flex-direction:column;align-items:flex-start;gap:.48rem}.site-footer a{color:var(--muted);text-decoration:none;font-size:.86rem}.site-footer a:hover{color:var(--accent)}.site-footer .footer-brand{color:var(--text);font-size:1.05rem;font-weight:750}.legal-page{max-width:760px;margin:2rem auto;line-height:1.72}.legal-page h1{margin-bottom:1.25rem}.legal-page h2{margin:2rem 0 .55rem;font-size:1.18rem}.legal-page p{color:var(--muted)}.legal-page-links{display:flex;gap:.6rem;margin:-.45rem 0 1.5rem}.legal-page-links a{padding:.4rem .7rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font-size:.84rem;font-weight:700}.legal-anchor{display:block;position:relative;top:-6rem;visibility:hidden}.legal-terms{margin-top:3.5rem;padding-top:2.5rem;border-top:1px solid var(--border)}.legal-terms h1{scroll-margin-top:6rem}.native-home-prompt{margin:0;font-size:1.75rem;line-height:1.2;font-weight:760;letter-spacing:-.025em;color:var(--text)}.scientific-layout{display:grid;grid-template-columns:minmax(300px,560px) minmax(220px,1fr);grid-gap:1rem;gap:1rem;align-items:start;max-width:920px;margin:0 auto}.scientific-calculator{padding:1rem}.scientific-mode{display:flex;align-items:center;gap:.35rem;margin-bottom:.6rem}.scientific-mode button{min-width:58px;padding:.4rem .65rem;border:0;border-radius:999px;background:var(--surface-2);color:var(--muted);font-weight:750;cursor:pointer}.scientific-mode button.active{background:var(--accent);color:#fff}.scientific-mode span{margin-left:auto;color:var(--accent);font-weight:800}.scientific-expression{width:100%;min-height:48px;border-radius:12px 12px 0 0!important;border-bottom:0!important;font:500 1.05rem var(--mono)!important;text-align:right}.scientific-result{display:flex;min-height:72px;align-items:center;justify-content:flex-end;padding:.6rem .8rem;overflow-wrap:anywhere;border:1px solid var(--border);border-top:0;border-radius:0 0 12px 12px;background:#fff;color:var(--text);font:750 clamp(1.55rem,5vw,2.35rem)/1.15 var(--mono)}.scientific-result span{color:var(--danger);font:600 .82rem/1.3 var(--sans)}.scientific-keys{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:.45rem;gap:.45rem;margin-top:.8rem}.scientific-keys button{min-height:48px;padding:.35rem;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);font:700 .92rem var(--sans);cursor:pointer}.scientific-keys button:hover{border-color:var(--accent)}.scientific-keys button.function{color:var(--accent)}.scientific-keys button.equals{border-color:var(--accent);background:var(--accent);color:#fff}.scientific-history>div{display:flex;align-items:center;justify-content:space-between}.scientific-history h2{margin:0 0 .7rem;font-size:1rem}.scientific-history>div button{border:0;background:transparent;color:var(--accent);cursor:pointer}.scientific-history>button{display:flex;width:100%;flex-direction:column;gap:.2rem;margin-top:.45rem;padding:.65rem;overflow:hidden;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);color:var(--text);text-align:right;cursor:pointer}.scientific-history>button span{overflow:hidden;color:var(--muted);font:.75rem var(--mono);text-overflow:ellipsis;white-space:nowrap}.scientific-history>button strong{font:700 .9rem var(--mono)}.scientific-history p{color:var(--muted);font-size:.85rem}@media (max-width:720px){.scientific-layout{grid-template-columns:1fr}.scientific-history{display:none}.scientific-calculator{padding:.7rem}.scientific-keys{gap:.35rem}.scientific-keys button{min-height:46px;border-radius:10px}}.native-app .scientific-tool .tool-header{margin-bottom:.45rem}.native-app .scientific-layout{display:block}.native-app .scientific-calculator{padding:.6rem;border-radius:16px}.native-app .scientific-result{min-height:58px;font-size:1.65rem}.native-app .scientific-expression{min-height:42px}.native-app .scientific-keys button{min-height:42px;font-size:.82rem}.sensor-tool{max-width:920px;margin:0 auto}.sensor-start{max-width:480px;margin:2rem auto;padding:2rem;text-align:center}.sensor-start>.material-symbols-rounded{display:grid;width:82px;height:82px;place-items:center;margin:0 auto 1rem;border-radius:50%;background:color-mix(in srgb,var(--accent) 12%,var(--surface-2));color:var(--accent);font-size:3rem}.sensor-start h2{margin:0 0 .5rem}.sensor-start p{color:var(--muted)}.sensor-start .btn{margin-top:.6rem}.sensor-tabs{display:none}.sensor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem;align-items:stretch}.sensor-single{max-width:480px;margin:0 auto}.compass-card,.level-card{min-width:0;text-align:center}.compass-dial{position:relative;width:min(78vw,330px);aspect-ratio:1;margin:.25rem auto 1rem;border:3px solid var(--border);border-radius:50%;background:radial-gradient(circle,var(--surface) 0 7%,transparent 7.5%),repeating-conic-gradient(from -1deg,var(--muted) 0 1deg,transparent 1deg 10deg),var(--surface-2);box-shadow:inset 0 0 0 16px var(--surface)}.compass-rose{position:absolute;inset:24px;border-radius:50%;transition:transform .12s linear}.compass-rose b{position:absolute;font-size:1.1rem}.compass-rose b:first-child{top:2px;left:50%;transform:translateX(-50%);color:#dc2626}.compass-rose b:nth-child(2){right:5px;top:50%;transform:translateY(-50%)}.compass-rose b:nth-child(3){bottom:2px;left:50%;transform:translateX(-50%)}.compass-rose b:nth-child(4){left:5px;top:50%;transform:translateY(-50%)}.compass-rose span{position:absolute;left:50%;top:14%;width:4px;height:36%;transform:translateX(-50%);border-radius:99px;background:linear-gradient(#dc2626 0 50%,#64748b 50%);transform-origin:50% 100%}.compass-index{position:absolute;z-index:2;left:50%;top:-4px;width:0;height:0;transform:translateX(-50%);border-left:10px solid transparent;border-right:10px solid transparent;border-top:22px solid var(--accent)}.sensor-reading{display:flex;align-items:baseline;justify-content:center;gap:.65rem}.sensor-reading strong{font-size:2.4rem}.sensor-reading span{color:var(--accent);font-size:1.2rem;font-weight:800}.compass-card p,.sensor-note{color:var(--muted);font-size:.82rem}.bubble-level{position:relative;width:min(78vw,330px);aspect-ratio:1;margin:.25rem auto 1rem;overflow:hidden;border:3px solid var(--border);border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--accent) 6%,var(--surface)) 0,var(--surface-2) 72%)}.bubble-ring{position:absolute;border:1px solid color-mix(in srgb,var(--muted) 45%,transparent);border-radius:50%}.ring-one{inset:24%}.ring-two{inset:40%}.bubble-level:after,.bubble-level:before{content:"";position:absolute;background:color-mix(in srgb,var(--muted) 30%,transparent)}.bubble-level:before{width:1px;top:8%;bottom:8%;left:50%}.bubble-level:after{height:1px;left:8%;right:8%;top:50%}.bubble{position:absolute;z-index:3;left:calc(50% - 24px);top:calc(50% - 24px);width:48px;height:48px;border:3px solid #15803d;border-radius:50%;background:rgba(34,197,94,.5);box-shadow:inset 0 0 12px hsla(0,0%,100%,.65),0 4px 12px rgba(22,101,52,.25);transition:transform .1s linear}.bubble-level em{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-53%);color:var(--muted);font:normal 1.5rem var(--sans)}.level-values{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:.5rem;gap:.5rem}.level-values div{padding:.65rem;border-radius:10px;background:var(--surface-2)}.level-values span{display:block;color:var(--muted);font-size:.72rem}.level-values strong{font-size:1.15rem}.level-status{margin:.7rem 0;color:var(--muted);font-weight:750}.level-card.is-level .level-status{color:#15803d}.level-actions{display:flex;justify-content:center;gap:.5rem}.sensor-note{text-align:center}@media (max-width:720px){.sensor-grid{grid-template-columns:1fr}.sensor-tabs{position:-webkit-sticky;position:sticky;z-index:4;top:62px;display:grid;grid-template-columns:1fr 1fr;grid-gap:.35rem;gap:.35rem;margin-bottom:.7rem;padding:.3rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.sensor-tabs a{padding:.55rem;border-radius:9px;color:var(--text);text-align:center;text-decoration:none;font-size:.8rem;font-weight:700}.sensor-tabs a:active{background:var(--surface-2)}.compass-card,.level-card{scroll-margin-top:120px}.sensor-reading strong{font-size:2rem}}.native-app .sensor-tool .tool-header{margin-bottom:.45rem}.native-app .sensor-grid{gap:.7rem}.native-app .compass-card,.native-app .level-card{padding:.7rem}.native-app .bubble-level,.native-app .compass-dial{width:min(72vw,310px)}.native-app .sensor-tabs{top:58px}.edu-tool{max-width:1120px;margin:0 auto}.edu-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:.8rem;gap:.8rem;align-items:end}.edu-two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:1rem;gap:1rem}.edu-tool textarea{min-height:180px;background:#fff;color:#171329}.edu-tool input,.edu-tool select{width:100%}.graph-paper-preview{max-width:560px;max-height:700px;margin:1rem auto;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);background:#fff}.graph-paper-preview svg{display:block;width:100%;height:auto}.flash-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:.8rem;gap:.8rem;margin-top:1rem}.flash-preview article{display:flex;min-height:130px;flex-direction:column;justify-content:center;gap:.6rem;padding:1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface);text-align:center}.flash-preview span{color:var(--muted)}.check-results{display:flex;flex-direction:column;gap:.6rem}.check-results .score{display:flex;align-items:baseline;gap:.4rem;padding:1rem;border-radius:14px;background:var(--surface-2)}.check-results .score strong{font-size:2.2rem;color:var(--accent)}.check-results article{padding:.8rem 1rem;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:10px;background:var(--surface)}.check-results article[data-level=Error]{border-left-color:#dc2626}.check-results article[data-level=Warning]{border-left-color:#d97706}.check-results article p{margin:.25rem 0 0;color:var(--muted)}.rubric-wrap{width:100%;overflow:auto;margin:1rem 0;border:1px solid var(--border);border-radius:12px}.rubric-wrap table{width:100%;min-width:760px;border-collapse:collapse;background:var(--surface)}.rubric-wrap td,.rubric-wrap th{padding:.55rem;border:1px solid var(--border);vertical-align:top}.rubric-wrap th{background:var(--surface-2)}.rubric-wrap input{min-width:100px}.rubric-wrap textarea{min-width:150px;min-height:90px}.rubric-wrap small{display:block;margin-top:.3rem;color:var(--muted)}.worksheet-sheet{margin:1rem auto;padding:2rem;max-width:850px;min-height:800px;color:#111;background:#fff;border:1px solid var(--border)}.worksheet-sheet ol{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.4rem 4rem;gap:1.4rem 4rem;padding-left:2rem;font:1.1rem var(--mono)}.grade-summary,.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:.7rem;gap:.7rem;margin:1rem 0}.grade-summary article,.stat-grid span{display:flex;flex-direction:column;gap:.3rem;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.grade-summary span,.stat-grid span{color:var(--muted)}.grade-summary strong,.stat-grid strong{color:var(--text);font-size:1.25rem}.equation-palette{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:1rem}.equation-palette button{padding:.55rem .7rem;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);cursor:pointer}.equation-preview{display:grid;min-height:130px;place-items:center;padding:1rem;border:1px solid var(--border);border-radius:14px;background:#fff;color:#171329;font-size:1.25rem;overflow:auto}.equation-preview .katex-display{margin:0}.equation-preview .katex{font-size:clamp(1.05rem,2.5vw,1.5rem)}.equation-preview.invalid{border-color:color-mix(in srgb,var(--danger) 45%,var(--border));color:var(--danger);font:600 .9rem/1.45 var(--sans);text-align:center}.equation-actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1rem}.equation-icon-btn{display:inline-grid;min-width:42px;place-items:center;padding-inline:.7rem}.equation-icon-btn .material-symbols-rounded{font-size:1.25rem}.equation-file-btn{display:inline-flex;align-items:center;gap:.25rem;min-width:58px;justify-content:center;padding-inline:.65rem}.equation-file-btn .material-symbols-rounded{font-size:1.15rem}.equation-file-btn span:last-child{font:700 .78rem/1 var(--mono)}.equation-actions .btn.selected{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.equation-copy-status{display:flex;align-items:center;gap:.4rem;width:max-content;max-width:100%;margin:.75rem 0 0;padding:.5rem .7rem;border-radius:9px;background:color-mix(in srgb,var(--ok) 10%,var(--surface));color:var(--ok);font-size:.86rem;font-weight:650}.equation-copy-status.error{background:color-mix(in srgb,var(--danger) 10%,var(--surface));color:var(--danger)}.equation-copy-status .material-symbols-rounded{font-size:1.1rem}.lab-chart{display:block;width:100%;height:auto;border:1px solid var(--border);border-radius:12px;background:#fff}.chemistry-tabs{display:flex;gap:.5rem;overflow:auto;margin-bottom:1rem}.chemistry-tabs button{white-space:nowrap}.chem-card{padding:1.2rem;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.chem-result{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding:1rem;border-radius:12px;background:var(--surface-2)}.chem-result strong{font-size:1.2rem;color:var(--accent)}.chem-result small{color:var(--muted)}@media(max-width:720px){.edu-two{grid-template-columns:1fr}.worksheet-sheet{padding:1rem}.worksheet-sheet ol{grid-template-columns:1fr;gap:1rem}.edu-tool .tool-header{margin-bottom:.7rem}}@media print{body *{visibility:hidden}.rubric-wrap,.rubric-wrap *,.worksheet-sheet,.worksheet-sheet *{visibility:visible}.rubric-wrap,.worksheet-sheet{position:absolute;inset:0;margin:0;border:0}.actions,.tool-header,.topnav{display:none!important}}.blogs-page{padding:1.5rem 0 3.5rem}.blogs-hero{max-width:760px;margin:0 auto 2.5rem;padding:2.5rem 1rem 1rem;text-align:center}.blogs-eyebrow{color:var(--accent-cyan);font-size:.73rem;font-weight:800;letter-spacing:.16em}.blogs-hero h1{margin:.55rem 0 .65rem;font-size:clamp(2.15rem,6vw,3.6rem);line-height:1.06;letter-spacing:-.055em;text-wrap:balance}.blogs-hero p{max-width:620px;margin:0 auto;color:var(--muted);font-size:1.02rem;line-height:1.7}.blog-featured{display:grid;overflow:hidden;grid-template-columns:minmax(0,1.12fr) minmax(320px,.88fr);border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow)}.blog-card-media,.blog-featured-media{display:grid;overflow:hidden;place-items:center;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 12%,var(--surface-2)),color-mix(in srgb,var(--accent-cyan) 9%,var(--surface)));color:var(--accent)}.blog-featured-media{min-height:390px}.blog-card-media img,.blog-featured-media img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.blog-card-media:hover img,.blog-featured-media:hover img{transform:scale(1.025)}.blog-featured-media>.material-symbols-rounded{font-size:4rem;opacity:.5}.blog-featured-copy{display:flex;padding:clamp(1.5rem,4vw,3rem);flex-direction:column;justify-content:center}.blog-card-categories{display:flex;flex-wrap:wrap;gap:.4rem}.blog-card-categories span{padding:.25rem .55rem;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.7rem;font-weight:760;letter-spacing:.03em}.blog-featured h2{margin:.8rem 0 .65rem;font-size:clamp(1.75rem,3vw,2.45rem);line-height:1.15;letter-spacing:-.04em}.blog-card h3 a,.blog-featured h2 a{color:var(--text)}.blog-featured-copy>p{margin:0 0 1rem;color:var(--muted);line-height:1.65}.blog-card-meta{display:flex;gap:1rem;color:var(--muted);font-size:.77rem}.blog-card-meta span+span:before{margin-right:1rem;content:"·"}.blog-read-link{display:inline-flex;width:-moz-fit-content;width:fit-content;align-items:center;gap:.35rem;margin-top:1.25rem;color:var(--accent);font-weight:750}.blog-read-link .material-symbols-rounded{font-size:1.1rem;transition:transform .16s}.blog-read-link:hover .material-symbols-rounded{transform:translateX(3px)}.blogs-latest{margin-top:3.5rem}.blogs-section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem}.blogs-section-heading h2{margin:0;font-size:1.5rem;letter-spacing:-.025em}.blogs-section-heading>span{color:var(--muted);font-size:.8rem}.blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1.15rem;gap:1.15rem}.blog-card{overflow:hidden;border:1px solid var(--border);border-radius:17px;background:var(--surface);box-shadow:0 5px 18px rgba(7,17,31,.05)}.blog-card-media{height:190px}.blog-card-media>.material-symbols-rounded{font-size:2.8rem;opacity:.5}.blog-card-body{padding:1rem 1.05rem 1.1rem}.blog-card h3{margin:.65rem 0 .45rem;font-size:1.12rem;line-height:1.3;letter-spacing:-.02em}.blog-card-body>p{display:-webkit-box;margin:0 0 .85rem;overflow:hidden;color:var(--muted);font-size:.86rem;line-height:1.55;-webkit-box-orient:vertical;-webkit-line-clamp:3}.blogs-empty{display:grid;max-width:560px;margin:2rem auto;padding:4rem 1rem;place-items:center;border:1px dashed var(--border);border-radius:20px;text-align:center}.blogs-empty>.material-symbols-rounded{color:var(--accent);font-size:3rem}.blogs-empty h2{margin:.8rem 0 .25rem}.blogs-empty p{margin:0;color:var(--muted)}.blog-article{max-width:860px;margin:0 auto;padding:1.25rem 0 4rem}.blog-breadcrumbs{display:flex;align-items:center;gap:.45rem;overflow:hidden;margin-bottom:2.3rem;font-size:.78rem;white-space:nowrap}.blog-breadcrumbs,.blog-breadcrumbs a{color:var(--muted)}.blog-breadcrumbs>span:last-child{overflow:hidden;text-overflow:ellipsis}.blog-article-header{max-width:680px;margin:0 auto 2.2rem;text-align:center}.blog-article-header .blog-card-categories{justify-content:center}.blog-article-header h1{margin:.85rem 0 .8rem;font-size:clamp(2rem,4.5vw,2.625rem);line-height:1.24;letter-spacing:-.012em;text-wrap:balance}.blog-article-header>p{max-width:680px;margin:0 auto;color:var(--muted);font-size:1.08rem;line-height:1.65;text-wrap:balance}.blog-article-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.65rem 1.3rem;margin-top:1.1rem;color:var(--muted);font-size:.78rem}.blog-article-meta span+span:before{margin-right:1.3rem;content:"·"}.blog-admin-edit-link{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:.4rem;margin-top:1rem;padding:.5rem .85rem;border:1px solid color-mix(in srgb,var(--accent) 38%,var(--border));border-radius:9px;background:var(--accent-soft);color:var(--accent);font-size:.8rem;font-weight:750}.blog-admin-edit-link:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,var(--surface))}.blog-admin-edit-link .material-symbols-rounded{font-size:1.05rem}.blog-share{position:relative}.blog-share-trigger{display:inline-flex;align-items:center;gap:.3rem;padding:.28rem .55rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.blog-share-trigger:hover,.blog-share-trigger[aria-expanded=true]{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.blog-share-trigger .material-symbols-rounded{font-size:1rem}.blog-share-menu{position:absolute;z-index:20;top:calc(100% + .5rem);right:0;width:178px;padding:.4rem;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 16px 38px rgba(7,17,31,.16);text-align:left}.blog-share-menu a,.blog-share-menu button{display:flex;width:100%;align-items:center;gap:.6rem;padding:.58rem .65rem;border:0;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.8rem;cursor:pointer}.blog-share-menu a:hover,.blog-share-menu button:hover{background:var(--surface-2);color:var(--accent)}.blog-share-menu .material-symbols-rounded{width:1.1rem;font-size:1.05rem}.blog-article-featured{overflow:hidden;margin:0 0 2.8rem;border-radius:22px;background:var(--surface-2)}.blog-article-featured img{display:block;width:100%;max-height:560px;object-fit:cover}.blog-article-content{max-width:680px;margin:0 auto;font-size:1.02rem;line-height:1.82}.blog-article-content h2{margin:2.2rem 0 .7rem;font-size:1.75rem;line-height:1.25;letter-spacing:-.035em}.blog-article-content h3{margin:1.8rem 0 .6rem;font-size:1.3rem;letter-spacing:-.02em}.blog-article-content p{margin:0 0 1.25rem}.blog-article-content img{display:block;max-width:100%;height:auto;margin:1.8rem auto;border-radius:14px}.blog-article-content blockquote{margin:1.8rem 0;padding:.2rem 0 .2rem 1.25rem;border-left:4px solid var(--accent-cyan);color:var(--muted);font-size:1.08rem}.blog-article-content pre{overflow-x:auto;padding:1rem;border:1px solid var(--border);border-radius:12px;background:var(--editor-bg);font:.88rem/1.65 var(--mono)}.blog-article-content :not(pre)>code{padding:.12rem .35rem;border-radius:5px;background:var(--surface-2);font:.88em var(--mono)}.blog-article-content a{text-decoration:underline;text-underline-offset:3px}.blog-article-content hr{margin:2.5rem 0;border:0;border-top:1px solid var(--border)}.blog-article-footer{max-width:680px;margin:3rem auto 0;padding-top:1.4rem;border-top:1px solid var(--border)}.blog-article-footer a{display:inline-flex;align-items:center;gap:.4rem;font-weight:700}.blog-related{margin-top:4rem;padding-top:2rem;border-top:1px solid var(--border)}.blog-related .blogs-section-heading{align-items:end}.blog-related .blogs-section-heading>div>span{color:var(--accent-cyan);font-size:.68rem;font-weight:800;letter-spacing:.14em}.blog-related .blogs-section-heading h2{margin-top:.25rem}.blog-related .blogs-section-heading>a{color:var(--accent);font-size:.82rem;font-weight:700}.blog-related .blog-card-media{height:150px}.blog-related .blog-card-body{padding:.9rem}.blog-related .blog-card h3{margin-bottom:.7rem}.diff-input-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:1rem;gap:1rem}.diff-input-grid .panel{min-width:0}.diff-input-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.6rem}.diff-input-heading label{font-weight:760}.diff-input-heading>div{display:flex;min-width:0;align-items:center;gap:.4rem}.diff-input-heading>div:first-child{align-items:flex-start;flex-direction:column;gap:.12rem}.diff-input-heading>div:first-child span{overflow:hidden;max-width:240px;color:var(--muted);font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.diff-input-heading .btn{min-height:34px;padding:.35rem .65rem}.diff-textarea{min-height:240px;resize:vertical;line-height:1.55}.diff-toolbar{display:flex;align-items:center;gap:.7rem 1.1rem;margin-top:1rem}.diff-toolbar label{display:inline-flex;align-items:center;gap:.38rem}.diff-summary,.diff-toolbar label{color:var(--muted);font-size:.82rem}.diff-summary{margin-left:auto}.diff-summary strong{color:var(--accent)}.diff-summary strong:nth-of-type(2){color:#16834b}.diff-summary strong:last-child{color:#c8404e}.diff-results{overflow:hidden;margin-top:1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.diff-results-head,.diff-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.diff-results-head{border-bottom:1px solid var(--border);background:var(--surface-2);font-size:.76rem;font-weight:760}.diff-results-head span{padding:.65rem .8rem}.diff-results-head span+span,.diff-row>div+div{border-left:1px solid var(--border)}.diff-row>div{display:grid;min-width:0;grid-template-columns:42px minmax(0,1fr);border-bottom:1px solid color-mix(in srgb,var(--border) 55%,transparent)}.diff-row:last-child>div{border-bottom:0}.diff-row code{display:block;overflow-wrap:anywhere;padding:.42rem .6rem;color:var(--text);font:.79rem/1.55 var(--mono);white-space:pre-wrap}.diff-line-number{padding:.42rem .5rem;background:color-mix(in srgb,var(--surface-2) 75%,transparent);color:var(--muted);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none}.diff-row.added>div:last-child{background:color-mix(in srgb,#37b86c 13%,var(--surface))}.diff-row.changed>div:first-child,.diff-row.removed>div:first-child{background:color-mix(in srgb,#e25d69 13%,var(--surface))}.diff-row.changed>div:last-child{background:color-mix(in srgb,#37b86c 13%,var(--surface))}.diff-row.removed>div:first-child code{color:#bd2638;text-decoration:line-through;text-decoration-thickness:1.5px}.diff-row.added>div:last-child code{color:#117543;font-weight:650}.diff-inline-add,.diff-inline-remove{padding:.08rem .12rem;border-radius:3px;color:inherit}.diff-inline-remove{background:color-mix(in srgb,#e25d69 30%,transparent);color:#a7192d;text-decoration:line-through;text-decoration-thickness:1.5px}.diff-inline-add{background:color-mix(in srgb,#37b86c 30%,transparent);color:#0d6b3a;font-weight:700}.diff-empty{padding:2.5rem 1rem;color:var(--muted);text-align:center}.redact-toolbar{position:-webkit-sticky;position:sticky;z-index:10;top:72px;display:flex;align-items:center;gap:.65rem;margin-bottom:1rem;box-shadow:0 10px 28px rgba(7,17,31,.08)}.redact-toolbar>div:first-child{min-width:160px;margin-right:auto}.redact-toolbar>div:first-child span,.redact-toolbar>div:first-child strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.redact-toolbar>div:first-child span{margin-top:.2rem;color:var(--muted);font-size:.74rem}.redact-toolbar label{display:grid;grid-gap:.2rem;gap:.2rem;color:var(--muted);font-size:.68rem;font-weight:700}.redact-toolbar select{padding:.35rem 1.8rem .35rem .55rem;color:var(--text)}.redact-color-control>span,.redact-toolbar select{min-height:36px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.redact-color-control>span{display:flex;align-items:center;gap:.4rem;padding:.25rem .45rem}.redact-color-control input[type=color]{width:30px;height:26px;padding:0;border:0;border-radius:5px;background:transparent;cursor:pointer}.redact-color-control code{color:var(--muted);font:.68rem var(--mono)}.redact-warning{display:flex;align-items:center;gap:.6rem;margin:0 0 1rem;padding:.75rem .9rem;border:1px solid color-mix(in srgb,#16834b 35%,var(--border));border-radius:12px;background:color-mix(in srgb,#37b86c 8%,var(--surface));color:var(--muted);font-size:.82rem;line-height:1.5}.redact-warning .material-symbols-rounded{color:#16834b}.redact-pages{display:grid;max-width:780px;grid-gap:1.5rem;gap:1.5rem;margin:0 auto}.redact-page{padding:.85rem;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:0 7px 22px rgba(7,17,31,.06)}.redact-page-heading{display:flex;align-items:center;gap:.7rem;margin-bottom:.65rem}.redact-page-heading span{color:var(--muted);font-size:.76rem}.redact-page-heading button{margin-left:auto;padding:.25rem .45rem;border:0;background:transparent;color:var(--accent);font:inherit;font-size:.74rem;cursor:pointer}.redact-canvas{position:relative;overflow:hidden;width:100%;border:1px solid var(--border);background:#fff;cursor:crosshair;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.redact-canvas img,.redact-canvas svg{position:absolute;inset:0;display:block;width:100%;height:100%}.redact-canvas svg rect{cursor:pointer;vector-effect:non-scaling-stroke}.redact-canvas svg rect:hover{stroke:#ff5b67;stroke-width:2px}.redact-canvas svg rect.draft{fill-opacity:.72;stroke:var(--accent-cyan);stroke-width:2px;pointer-events:none}.redact-page>.hint{margin:.55rem 0 0;text-align:center}@media (max-width:720px){.diff-input-grid{grid-template-columns:1fr}.diff-input-heading,.diff-toolbar{align-items:flex-start;flex-direction:column}.diff-summary{margin-left:0}.diff-row code{font-size:.7rem}.diff-line-number{display:none}.diff-row>div{grid-template-columns:1fr}.redact-toolbar{position:static;align-items:stretch;flex-wrap:wrap}.redact-toolbar>div:first-child{width:100%}.redact-toolbar .btn.primary{flex:1 0 100%}}.blog-admin-state{display:grid;max-width:540px;margin:10vh auto;padding:2.5rem 1.5rem;place-items:center;border:1px solid var(--border);border-radius:20px;background:var(--surface);text-align:center;box-shadow:var(--shadow)}.blog-admin-state>.material-symbols-rounded{color:var(--accent);font-size:3rem}.blog-admin-state h1{margin:.8rem 0 .35rem;font-size:1.6rem}.blog-admin-state p{margin:0 0 1.2rem;color:var(--muted);line-height:1.65}.blog-admin-state a{padding:.7rem 1rem;border-radius:10px;background:var(--accent);color:#fff;font-weight:700}.blog-editor-page{width:calc(100vw - 2rem);max-width:1560px;margin:0 auto;padding:1rem 0 3rem}.blog-editor-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.blog-editor-topbar>div:first-child>span{color:var(--accent-cyan);font-size:.67rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.blog-editor-topbar h1{margin:.1rem 0 0;font-size:1.25rem}.blog-editor-actions{display:flex;align-items:center;gap:.55rem}.blog-editor-actions a,.blog-editor-actions button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:.35rem;padding:.5rem .8rem;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-weight:680;cursor:pointer}.blog-editor-actions .material-symbols-rounded{font-size:1.15rem}.blog-editor-actions .primary{border-color:var(--accent);background:var(--accent);color:#fff}.blog-editor-actions button:disabled{cursor:wait;opacity:.6}.blog-editor-workspace{display:grid;grid-template-columns:230px minmax(0,1fr) 280px;align-items:start;grid-gap:1rem;gap:1rem}.blog-editor-box,.blog-editor-posts,.blog-editor-settings>section{border:1px solid var(--border);border-radius:14px;background:var(--surface)}.blog-editor-posts{position:-webkit-sticky;position:sticky;top:86px;overflow:hidden}.new-post-button{display:flex;width:calc(100% - 1rem);min-height:42px;align-items:center;justify-content:center;gap:.4rem;margin:.5rem;border:0;border-radius:9px;background:var(--accent);color:#fff;font-weight:750;cursor:pointer}.blog-editor-post-list{max-height:calc(100dvh - 190px);overflow-y:auto;padding:0 .45rem .45rem}.blog-editor-post-list>button{display:block;width:100%;padding:.7rem;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;cursor:pointer}.blog-editor-post-list>button.active,.blog-editor-post-list>button:hover{background:var(--surface-2)}.blog-editor-post-list strong{display:block;overflow:hidden;margin-bottom:.3rem;text-overflow:ellipsis;font-size:.84rem;white-space:nowrap}.blog-editor-post-list button>span{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.67rem}.blog-editor-post-list i{padding:.12rem .35rem;border-radius:999px;background:var(--surface-2);font-style:normal;text-transform:capitalize}.blog-editor-post-list i.published{background:color-mix(in srgb,var(--ok) 13%,var(--surface));color:var(--ok)}.blog-editor-post-list>p{padding:1rem .5rem;color:var(--muted);font-size:.78rem;text-align:center}.blog-editor-main{min-width:0}.blog-title-input{width:100%;padding:.25rem .1rem .5rem;border:0;background:transparent;box-shadow:none;color:var(--text);font-size:clamp(2rem,4vw,3rem);font-weight:760;letter-spacing:-.05em}.blog-title-input:focus{outline:0;box-shadow:none}.blog-permalink{display:flex;align-items:center;gap:0;margin-bottom:.8rem;color:var(--muted);font-size:.76rem}.blog-permalink input{min-width:120px;max-width:320px;padding:.15rem .25rem;border:0;background:transparent;box-shadow:none;color:var(--accent);font:inherit}.blog-editor-surface{overflow:hidden;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.blog-editor-toolbar{display:flex;align-items:center;gap:.15rem;overflow-x:auto;padding:.45rem;border-bottom:1px solid var(--border);background:var(--surface-2);scrollbar-width:none}.blog-editor-toolbar button{display:grid;min-width:34px;height:34px;place-items:center;padding:0 .35rem;border:0;border-radius:7px;background:transparent;color:var(--text);font-size:.75rem;font-weight:700;cursor:pointer}.blog-editor-toolbar button.active,.blog-editor-toolbar button:hover{background:var(--surface);color:var(--accent);box-shadow:0 1px 3px rgba(0,0,0,.08)}.blog-editor-toolbar .material-symbols-rounded{font-size:1.15rem}.toolbar-divider{width:1px;height:24px;margin:0 .2rem;flex:0 0 auto;background:var(--border)}.blog-rich-editor .tiptap{min-height:560px;padding:2.4rem clamp(1rem,6vw,4.2rem);outline:0;font-size:1rem;line-height:1.8}.blog-rich-editor .tiptap p.is-editor-empty:first-child:before{height:0;float:left;color:var(--muted);content:attr(data-placeholder);pointer-events:none}.blog-rich-editor .tiptap h2{margin:1.8rem 0 .6rem;font-size:1.7rem;letter-spacing:-.035em}.blog-rich-editor .tiptap h3{margin:1.5rem 0 .5rem;font-size:1.3rem}.blog-rich-editor .tiptap blockquote{margin:1.5rem 0;padding-left:1rem;border-left:4px solid var(--accent-cyan);color:var(--muted)}.blog-rich-editor .tiptap pre{overflow-x:auto;padding:1rem;border-radius:10px;background:var(--editor-bg);font-family:var(--mono)}.blog-rich-editor .tiptap img{max-width:100%;height:auto;border-radius:10px}.blog-editor-box{position:relative;margin-top:1rem;padding:1rem}.blog-editor-box h2,.blog-editor-settings h2{margin:0;font-size:.95rem}.blog-editor-box>p{margin:.25rem 0 .7rem;color:var(--muted);font-size:.77rem}.blog-editor-box input,.blog-editor-box textarea{width:100%}.field-count{position:absolute;right:1.4rem;bottom:1.25rem;color:var(--muted);font-size:.68rem}.blog-seo-preview{margin:.7rem 0 1rem;padding:.9rem;border:1px solid var(--border);border-radius:10px}.blog-seo-preview strong{display:block;overflow:hidden;color:#1a0dab;font-size:1.05rem;text-overflow:ellipsis;white-space:nowrap}.blog-seo-preview>span{color:#188038;font-size:.72rem}.blog-seo-preview p{margin:.25rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.45}.blog-editor-box label{position:relative;display:block;margin-top:.8rem;color:var(--muted);font-size:.75rem;font-weight:650}.blog-editor-box label input,.blog-editor-box label textarea{display:block;margin-top:.25rem}.blog-editor-box label small{position:absolute;right:.5rem;bottom:.4rem;color:var(--muted);font-size:.65rem}.blog-editor-settings{display:grid;grid-gap:1rem;gap:1rem}.blog-editor-settings>section{padding:.9rem}.publish-status{display:flex;align-items:center;gap:.6rem;margin:.75rem 0;padding:.65rem;border-radius:9px;background:var(--surface-2)}.publish-status>.material-symbols-rounded{color:var(--accent)}.publish-status small,.publish-status strong{display:block}.publish-status small{color:var(--muted);font-size:.65rem}.publish-status strong{font-size:.8rem}.settings-save{width:100%;min-height:40px;border:0;border-radius:9px;background:var(--accent);color:#fff;font-weight:740;cursor:pointer}.delete-post{width:100%;margin-top:.45rem;padding:.45rem;border:0;background:transparent;color:var(--danger);font-size:.75rem;cursor:pointer}.blog-category-options{display:grid;max-height:190px;margin:.65rem 0;grid-gap:.45rem;gap:.45rem;overflow-y:auto}.blog-category-options label{display:flex;align-items:center;gap:.45rem;font-size:.8rem}.blog-category-options input{width:auto;accent-color:var(--accent)}.add-blog-category{display:flex;gap:.35rem}.add-blog-category input{min-width:0;padding:.5rem .55rem;font-size:.78rem}.add-blog-category button{border:0;border-radius:7px;background:var(--surface-2);color:var(--text);cursor:pointer}.featured-image-upload{display:grid;width:100%;min-height:130px;margin-top:.65rem;place-items:center;align-content:center;grid-gap:.35rem;gap:.35rem;border:1px dashed var(--border);border-radius:10px;background:var(--surface-2);color:var(--muted);font-size:.75rem;cursor:pointer}.featured-image-upload .material-symbols-rounded{color:var(--accent);font-size:1.7rem}.featured-image-preview{overflow:hidden;margin-top:.65rem;border:1px solid var(--border);border-radius:10px}.featured-image-preview img{display:block;width:100%;max-height:170px;object-fit:cover}.featured-image-preview>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--border)}.featured-image-preview button{padding:.45rem;border:0;background:var(--surface-2);color:var(--text);font-size:.72rem;cursor:pointer}.featured-image-preview button+button{border-left:1px solid var(--border);color:var(--danger)}.featured-alt{display:block;margin-top:.65rem;color:var(--muted);font-size:.72rem}.featured-alt input{width:100%;margin-top:.25rem;padding:.5rem;font-size:.78rem}.blog-image-library-backdrop{position:fixed;z-index:180;inset:0;display:grid;place-items:center;padding:clamp(.5rem,2vw,1.25rem);background:rgba(4,15,30,.72);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.blog-image-library{display:flex;width:min(1320px,100%);height:min(900px,calc(100dvh - 2 * clamp(.5rem, 2vw, 1.25rem)));flex-direction:column;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 24px 80px rgba(0,0,0,.32)}.blog-image-library>header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.1rem;border-bottom:1px solid var(--border)}.blog-image-library>header span:first-child{color:var(--accent-cyan);font-size:.66rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.blog-image-library>header h2{margin:.1rem 0 0;font-size:1.25rem}.blog-image-library>header>button{display:grid;width:38px;height:38px;flex:0 0 auto;place-items:center;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface-2);color:var(--text);cursor:pointer}.blog-image-library-tools{display:flex;align-items:center;gap:.55rem;padding:.85rem 1.1rem 0}.blog-image-library-tools label{display:flex;min-width:180px;flex:1 1;align-items:center;gap:.4rem;padding:0 .65rem;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.blog-image-library-tools label .material-symbols-rounded{color:var(--muted);font-size:1.1rem}.blog-image-library-tools input{width:100%;min-height:40px;padding:0;border:0;background:transparent;box-shadow:none}.blog-image-library-tools button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .7rem;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-weight:680;cursor:pointer}.blog-image-library-tools button.primary{border-color:var(--accent);background:var(--accent);color:#fff}.blog-image-library-tools button:disabled{cursor:wait;opacity:.6}.blog-image-library-tools .material-symbols-rounded{font-size:1.1rem}.blog-image-library-purpose{margin:.65rem 1.1rem 0;color:var(--muted);font-size:.76rem}.blog-image-library-grid{display:grid;min-height:0;flex:1 1;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-auto-rows:max-content;align-content:start;align-items:start;grid-gap:1rem;gap:1rem;overflow-y:auto;padding:1rem 1.1rem 1.25rem;scrollbar-gutter:stable}.blog-image-library-grid article{position:relative;min-width:0;align-self:start;overflow:hidden;border:1px solid var(--border);border-radius:13px;background:var(--surface-2);box-shadow:0 3px 12px rgba(7,17,31,.06);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.blog-image-library-grid article:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--border));box-shadow:0 9px 24px rgba(7,17,31,.12);transform:translateY(-2px)}.blog-library-image-select{display:grid;width:100%;grid-template-rows:190px auto auto;padding:0;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.blog-library-image-frame{display:grid;width:100%;height:190px;place-items:center;overflow:hidden;padding:.35rem;border-bottom:1px solid var(--border);background-color:var(--editor-bg);background-image:linear-gradient(45deg,rgba(128,142,158,.09) 25%,transparent 0),linear-gradient(-45deg,rgba(128,142,158,.09) 25%,transparent 0),linear-gradient(45deg,transparent 75%,rgba(128,142,158,.09) 0),linear-gradient(-45deg,transparent 75%,rgba(128,142,158,.09) 0);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.blog-library-image-frame img{display:block;width:100%;height:100%;object-fit:contain}.blog-library-image-name{display:block;overflow:hidden;padding:.65rem .65rem .1rem;text-overflow:ellipsis;font-size:.78rem;font-weight:700;white-space:nowrap}.blog-library-image-select small{display:block;min-height:1.4rem;padding:0 .55rem .45rem;color:var(--muted);font-size:.65rem}.blog-library-image-delete{position:absolute;top:.4rem;right:.4rem;display:grid;width:32px;height:32px;place-items:center;padding:0;border:1px solid hsla(0,0%,100%,.45);border-radius:50%;background:rgba(5,15,28,.72);color:#fff;opacity:0;cursor:pointer;transition:opacity .15s ease}.blog-image-library-grid article:hover .blog-library-image-delete,.blog-library-image-delete:focus-visible{opacity:1}.blog-library-image-delete .material-symbols-rounded{font-size:1rem}.blog-image-library-empty{display:grid;min-height:270px;grid-column:1/-1;place-items:center;align-content:center;grid-gap:.35rem;gap:.35rem;color:var(--muted);text-align:center}.blog-image-library-empty>.material-symbols-rounded{color:var(--accent);font-size:2.4rem}.blog-image-library-empty strong{color:var(--text)}.image-manager-page{width:min(1440px,calc(100vw - 2rem));margin:0 auto;padding:1.5rem 0 4rem}.image-manager-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1.25rem;margin-bottom:1.25rem}.image-manager-header>div:first-child>span{color:var(--accent-cyan);font-size:.68rem;font-weight:800;letter-spacing:.13em}.image-manager-header h1{margin:.25rem 0 .3rem;font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em}.image-manager-header p{margin:0;color:var(--muted)}.image-manager-header-actions{display:flex;align-items:center;gap:.55rem}.image-manager-card-actions button,.image-manager-header-actions a,.image-manager-header-actions button,.image-manager-toolbar button{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:.4rem;padding:.55rem .8rem;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);font-weight:700;cursor:pointer}.image-manager-header-actions .primary{border-color:var(--accent);background:var(--accent);color:#fff}.image-manager-card-actions .material-symbols-rounded,.image-manager-header-actions .material-symbols-rounded,.image-manager-toolbar .material-symbols-rounded{font-size:1.1rem}.image-manager-header-actions button:disabled,.image-manager-toolbar button:disabled{cursor:wait;opacity:.6}.image-manager-toolbar{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.75rem;border:1px solid var(--border);border-radius:13px;background:var(--surface)}.image-manager-toolbar label{display:flex;min-width:240px;flex:1 1;align-items:center;gap:.45rem;padding:0 .7rem;border:1px solid var(--border);border-radius:9px;background:var(--surface-2)}.image-manager-toolbar label>.material-symbols-rounded{color:var(--muted)}.image-manager-toolbar input{width:100%;min-height:42px;padding:0;border:0;background:transparent;box-shadow:none}.image-manager-toolbar>span{color:var(--muted);font-size:.78rem;white-space:nowrap}.image-manager-message{margin-bottom:1rem;padding:.7rem .85rem;border:1px solid color-mix(in srgb,var(--ok) 42%,var(--border));border-radius:10px;background:color-mix(in srgb,var(--ok) 7%,var(--surface));font-size:.82rem}.image-manager-message.error{border-color:color-mix(in srgb,var(--danger) 42%,var(--border));background:color-mix(in srgb,var(--danger) 7%,var(--surface))}.image-manager-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));align-items:start;grid-gap:1rem;gap:1rem}.image-manager-card{overflow:hidden;border:1px solid var(--border);border-radius:15px;background:var(--surface);box-shadow:0 4px 16px rgba(7,17,31,.06)}.image-manager-preview{position:relative;display:grid;width:100%;aspect-ratio:16/9;place-items:center;overflow:hidden;padding:.4rem;border-bottom:1px solid var(--border);background-color:var(--editor-bg);background-image:linear-gradient(45deg,rgba(128,142,158,.09) 25%,transparent 0),linear-gradient(-45deg,rgba(128,142,158,.09) 25%,transparent 0),linear-gradient(45deg,transparent 75%,rgba(128,142,158,.09) 0),linear-gradient(-45deg,transparent 75%,rgba(128,142,158,.09) 0);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px}.image-manager-preview img{display:block;width:100%;height:100%;object-fit:contain}.image-manager-preview>span{position:absolute;right:.65rem;bottom:.65rem;display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .55rem;border:1px solid hsla(0,0%,100%,.35);border-radius:999px;background:rgba(5,15,28,.76);color:#fff;font-size:.68rem;font-weight:700;opacity:0;transition:opacity .15s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.image-manager-preview:focus-visible>span,.image-manager-preview:hover>span{opacity:1}.image-manager-preview .material-symbols-rounded{font-size:.9rem}.image-manager-details{padding:.9rem}.image-manager-details h2{overflow:hidden;margin:0 0 .75rem;text-overflow:ellipsis;font-size:.95rem;white-space:nowrap}.image-manager-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:.55rem;gap:.55rem}.image-manager-facts>span{display:grid;grid-gap:.12rem;gap:.12rem;min-width:0;color:var(--text);font-size:.75rem}.image-manager-facts strong,.image-manager-path strong{color:var(--muted);font-size:.62rem;letter-spacing:.05em;text-transform:uppercase}.image-manager-path{display:grid;grid-gap:.25rem;gap:.25rem;margin-top:.75rem}.image-manager-path code{overflow:hidden;padding:.45rem .55rem;border-radius:7px;background:var(--surface-2);color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.image-manager-card-actions{display:grid;grid-template-columns:1fr 1fr;grid-gap:.5rem;gap:.5rem;margin-top:.8rem}.image-manager-card-actions button{min-height:38px;padding:.4rem .6rem;font-size:.72rem}.image-manager-card-actions .danger{color:var(--danger)}.image-manager-empty{display:grid;min-height:360px;place-items:center;align-content:center;grid-gap:.35rem;gap:.35rem;border:1px dashed var(--border);border-radius:15px;color:var(--muted);text-align:center}.image-manager-empty>.material-symbols-rounded{color:var(--accent);font-size:2.7rem}.image-manager-empty strong{color:var(--text)}.blog-editor-notice{position:fixed;z-index:140;right:1rem;bottom:1rem;display:flex;width:min(380px,calc(100vw - 2rem));align-items:center;gap:.55rem;padding:.75rem;border:1px solid color-mix(in srgb,var(--ok) 40%,var(--border));border-radius:12px;background:var(--surface);box-shadow:var(--shadow);font-size:.82rem}.blog-editor-notice>.material-symbols-rounded{color:var(--ok)}.blog-editor-notice>span:nth-child(2){flex:1 1}.blog-editor-notice button{display:grid;width:30px;height:30px;place-items:center;padding:0;border:0;border-radius:50%;background:var(--surface-2);color:var(--muted);cursor:pointer}.blog-editor-notice.error{border-color:color-mix(in srgb,var(--danger) 40%,var(--border))}.blog-editor-notice.error>.material-symbols-rounded{color:var(--danger)}@media (max-width:1050px){.blog-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.blog-editor-workspace{grid-template-columns:minmax(0,1fr) 260px}.blog-editor-posts{position:static;grid-column:1/-1}.blog-editor-post-list{display:flex;max-height:none;gap:.3rem;overflow-x:auto}.blog-editor-post-list>button{min-width:190px}}@media (max-width:720px){.blogs-page{padding-top:0}.blogs-hero{padding:1.5rem .25rem .5rem}.blog-featured{grid-template-columns:1fr;border-radius:18px}.blog-featured-media{min-height:220px}.blog-card-grid{grid-template-columns:1fr}.blog-card-media{height:210px}.blog-article-meta{gap:.55rem;flex-wrap:wrap}.blog-article-meta span+span:before{margin-right:.55rem}.blog-article-featured{margin-right:-1rem;margin-left:-1rem;border-radius:0}.blog-editor-page{width:calc(100vw - 1rem)}.blog-editor-topbar{align-items:flex-start;flex-direction:column}.blog-editor-actions{width:100%;overflow-x:auto}.blog-editor-actions>*{flex:0 0 auto}.blog-editor-workspace{grid-template-columns:1fr}.blog-editor-settings{grid-row:2;grid-template-columns:1fr}.blog-title-input{font-size:2rem}.blog-rich-editor .tiptap{min-height:440px;padding:1.25rem 1rem}.blog-image-library-tools{align-items:stretch;flex-wrap:wrap}.blog-image-library-tools label{flex-basis:100%}.blog-image-library-tools button{flex:1 1}.blog-image-library{height:calc(100dvh - 1rem);border-radius:14px}.blog-image-library-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.75rem;padding:.75rem}.blog-library-image-select{grid-template-rows:160px auto auto}.blog-library-image-frame{height:160px}.blog-library-image-delete{opacity:1}.image-manager-page{width:calc(100vw - 1rem);padding-top:1rem}.image-manager-header{align-items:stretch;flex-direction:column}.image-manager-header-actions>*{flex:1 1}.image-manager-toolbar{align-items:stretch;flex-wrap:wrap}.image-manager-toolbar label{flex-basis:100%}.image-manager-toolbar>span{flex:1 1;align-self:center}.image-manager-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.home-benefits,.home-faq,.related-tools,.site-footer{grid-template-columns:1fr}.site-footer{gap:1.5rem}}