@charset "UTF-8";:root{--bg: #FBFAF9;--surface: #FFFFFF;--surface-elevated:#FFFFFF;--surface-sunken: #F4F2EF;--surface-hover: #F7F5F2;--text-primary: #1A1C1B;--text-secondary: #5C635F;--text-tertiary: #8A918D;--text-on-accent: #FFFFFF;--border: #E6E4E0;--border-strong: #D4D1CC;--accent: #0E7C6B;--accent-hover: #0A6355;--accent-active: #084D42;--accent-soft: #E6F4F1;--accent-soft-border: #C2E4DC;--success: #15803D;--success-soft: #E8F5EC;--warning: #B45309;--warning-soft: #FDF3E4;--error: #C2261F;--error-soft: #FCECEB;--info: #1D6FB8;--info-soft: #E9F2FA;--cat-pdf: #C2261F;--cat-documents: #8A5A2B;--cat-images: #7C3AED;--cat-student: #0E7C6B;--cat-developer: #1D6FB8;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-full: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10:40px;--s-12:48px;--s-16:64px;--s-20:80px;--shadow-xs: 0 1px 2px rgba(16, 20, 18, .05);--shadow-sm: 0 1px 3px rgba(16, 20, 18, .06), 0 1px 2px rgba(16, 20, 18, .04);--shadow-md: 0 4px 12px rgba(16, 20, 18, .07), 0 1px 3px rgba(16, 20, 18, .04);--shadow-lg: 0 12px 28px rgba(16, 20, 18, .1), 0 2px 6px rgba(16, 20, 18, .05);--ease: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--t-fast: .12s;--t-base: .2s;--t-slow: .32s;--container: 1200px;--container-text: 720px;--header-h: 60px;--mobile-nav-h: 62px;--touch-min: 44px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px);--z-header: 100;--z-nav: 100;--z-drop: 200;--z-modal: 300;--z-toast: 400}[data-theme=dark]{--bg: #0F1211;--surface: #171B1A;--surface-elevated:#1F2423;--surface-sunken: #0B0E0D;--surface-hover: #222827;--text-primary: #F2F4F3;--text-secondary: #A3ABA7;--text-tertiary: #757D79;--text-on-accent: #07211D;--border: #2A302E;--border-strong: #3A423F;--accent: #2DD4BF;--accent-hover: #5EE7D5;--accent-active: #14B8A6;--accent-soft: #10312C;--accent-soft-border: #1B4A42;--success: #4ADE80;--success-soft: #102B1A;--warning: #FBBF24;--warning-soft: #33260B;--error: #F87171;--error-soft: #331615;--info: #60A5FA;--info-soft: #12243A;--cat-pdf: #F87171;--cat-documents: #D9A066;--cat-images: #A78BFA;--cat-student: #2DD4BF;--cat-developer: #60A5FA;--shadow-xs: 0 1px 2px rgba(0,0,0,.4);--shadow-sm: 0 1px 3px rgba(0,0,0,.45);--shadow-md: 0 4px 12px rgba(0,0,0,.5);--shadow-lg: 0 12px 28px rgba(0,0,0,.55)}:root{--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--t-reveal: .64s;--font-display: var(--font-sans);--bg-alt: #F4F2EF;--cat-pdf-soft: #FBEAE9;--cat-documents-soft: #F5EDE4;--cat-images-soft: #F1EAFD;--cat-student-soft: #E6F4F1;--cat-developer-soft: #E9F2FA;--cat-finance: #C79100;--cat-finance-soft: #FEF6DC;--r-2xl: 30px;--s-24: 96px;--s-32: 128px;--brand-green: #1A8352;--cat-home-diy: #C2410C;--cat-home-diy-soft: #FDEEE3;--cat-creator: #BE185D;--cat-creator-soft: #FCE7F1;--cat-health: #0E7490;--cat-health-soft: #E3F3F7;--cat-device: #4F46E5;--cat-excel: #15803D;--cat-excel-soft: #E7F4EC;--shadow-focus: 0 0 0 3px rgba(14, 124, 107, .22)}[data-theme=dark]{--bg-alt: #141817;--cat-pdf-soft: #2E1A19;--cat-documents-soft: #2A2017;--cat-images-soft: #221B33;--cat-student-soft: #10312C;--cat-developer-soft: #12243A;--cat-finance: #FED355;--cat-finance-soft: #332B10;--cat-home-diy: #FB923C;--cat-home-diy-soft: #33200F;--cat-creator: #F472B6;--cat-creator-soft: #331325;--cat-health: #22D3EE;--cat-health-soft: #0E2A31;--cat-device: #A5B4FC;--cat-excel: #4ADE80;--cat-excel-soft: #0F2A1A;--shadow-focus: 0 0 0 3px rgba(45, 212, 191, .3)}:root{--chart-1: #0D9488;--chart-2: #D97706;--chart-3: #6D28D9}[data-theme=dark]{--chart-1: #0E9985;--chart-2: #C2780C;--chart-3: #8660EE}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh;background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overscroll-behavior-y:none}img,picture,svg,video,canvas{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{background:none;border:none;cursor:pointer;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}:target{scroll-margin-top:calc(var(--header-h) + var(--s-4))}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.reveal{opacity:0;transform:translateY(22px);transition:opacity var(--t-reveal) var(--ease-out),transform var(--t-reveal) var(--ease-out);will-change:opacity,transform}.reveal--in{opacity:1;transform:none;will-change:auto}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}@keyframes float-y{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes shimmer-x{0%{background-position:200% 0}to{background-position:-40% 0}}:root{--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--fs-xs: .75rem;--fs-sm: .875rem;--fs-base: 1rem;--fs-md: 1.0625rem;--fs-lg: clamp(1.125rem, 1.05rem + .4vw, 1.25rem);--fs-xl: clamp(1.375rem, 1.25rem + .7vw, 1.625rem);--fs-2xl: clamp(1.75rem, 1.5rem + 1.2vw, 2.25rem);--fs-3xl: clamp(2.125rem, 1.7rem + 2vw, 3rem);--lh-tight: 1.18;--lh-snug: 1.35;--lh-base: 1.6;--fw-normal: 400;--fw-medium: 500;--fw-semi: 600;--fw-bold: 700}body{font-family:var(--font-sans);font-size:var(--fs-base);line-height:var(--lh-base)}h1,h2,h3,h4{line-height:var(--lh-tight);letter-spacing:-.02em;font-weight:var(--fw-semi)}h1{font-size:var(--fs-3xl);letter-spacing:-.03em;font-weight:var(--fw-bold)}h2{font-size:var(--fs-2xl)}h3{font-size:var(--fs-xl)}h4{font-size:var(--fs-lg)}.text-muted{color:var(--text-secondary)}.text-subtle{color:var(--text-tertiary);font-size:var(--fs-sm)}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.hl{color:var(--accent)}.accent-pdf{--accent-c: var(--cat-pdf);--accent-c-soft: var(--cat-pdf-soft)}.accent-excel{--accent-c: var(--cat-excel);--accent-c-soft: var(--cat-excel-soft)}.accent-documents{--accent-c: var(--cat-documents);--accent-c-soft: var(--cat-documents-soft)}.accent-images{--accent-c: var(--cat-images);--accent-c-soft: var(--cat-images-soft)}.accent-student{--accent-c: var(--cat-student);--accent-c-soft: var(--cat-student-soft)}.accent-developer{--accent-c: var(--cat-developer);--accent-c-soft: var(--cat-developer-soft)}.accent-finance{--accent-c: var(--cat-finance);--accent-c-soft: var(--cat-finance-soft)}.accent-home-diy{--accent-c: var(--cat-home-diy);--accent-c-soft: var(--cat-home-diy-soft)}.accent-creator{--accent-c: var(--cat-creator);--accent-c-soft: var(--cat-creator-soft)}.accent-health{--accent-c: var(--cat-health);--accent-c-soft: var(--cat-health-soft)}.accent-device{--accent-c: var(--cat-device);--accent-c-soft: var(--cat-device-soft)}.brand-read{color:var(--brand-green);font-weight:var(--fw-semi)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-3) var(--s-6);border-radius:var(--r-full);font-weight:var(--fw-semi);white-space:nowrap;transition:background var(--t-fast) var(--ease-standard),color var(--t-fast) var(--ease-standard);min-height:var(--touch-min);min-width:var(--touch-min)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.5;cursor:default}.btn--sm{padding:var(--s-2) var(--s-4);font-size:var(--fs-sm)}.btn--go{background:var(--accent);color:var(--text-on-accent)}@media(hover:hover)and (pointer:fine){.btn--go:hover{background:var(--accent-hover)}}.btn--ghost{border:1px solid var(--border-strong);color:var(--text-secondary);font-weight:var(--fw-medium)}@media(hover:hover)and (pointer:fine){.btn--ghost:hover{background:var(--surface-hover);color:var(--text-primary)}}.calc{display:flex;flex-direction:column;gap:var(--s-5)}.calc__tabs{display:flex;flex-wrap:wrap;gap:var(--s-2)}.calc__tab{padding:var(--s-2) var(--s-4);border-radius:var(--r-full);border:1px solid var(--border);background:var(--surface);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary);min-height:var(--touch-min);min-width:var(--touch-min)}.calc__tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.calc__tab:hover{border-color:var(--border-strong);color:var(--text-primary)}}.calc__tab.is-on{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.calc__fields{display:grid;grid-template-columns:1fr;gap:var(--s-4)}@media(min-width:480px){.calc__fields{grid-template-columns:repeat(2,1fr)}}.calc__field{display:flex;flex-direction:column;gap:var(--s-2)}.calc__field>span{font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary)}.calc__field input,.calc__field select{padding:var(--s-3) var(--s-4);border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--surface);font-size:var(--fs-md);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;transition:border-color var(--t-fast) var(--ease-standard),box-shadow var(--t-fast) var(--ease-standard)}.calc__field input:focus-visible,.calc__field select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.calc__field input:hover,.calc__field select:hover{border-color:var(--border-strong)}}.calc__field input:focus,.calc__field select:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.calc__hint{font-size:var(--fs-sm);color:var(--text-tertiary)}.calc__rows{display:flex;flex-direction:column;gap:var(--s-2)}.calc__row{display:grid;grid-template-columns:1fr 78px 78px 40px;gap:var(--s-2);align-items:center}@media(min-width:480px){.calc__row{grid-template-columns:1fr 96px 96px 44px}}.calc__row input{padding:var(--s-3);border-radius:var(--r-md);border:1.5px solid var(--border);background:var(--surface);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;min-width:0;transition:border-color var(--t-fast) var(--ease-standard),box-shadow var(--t-fast) var(--ease-standard)}.calc__row input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.calc__row input:hover{border-color:var(--border-strong)}}.calc__row input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.calc__row input[type=number]{text-align:center}.calc__row-head{display:grid;grid-template-columns:1fr 78px 78px 40px;gap:var(--s-2);padding:0 var(--s-1)}@media(min-width:480px){.calc__row-head{grid-template-columns:1fr 96px 96px 44px}}.calc__row-head span{font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.05em;text-transform:uppercase;color:var(--text-tertiary)}.calc__row-head span:not(:first-child){text-align:center}.calc__x{display:grid;place-items:center;height:40px;border-radius:var(--r-full);color:var(--text-tertiary)}.calc__x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.calc__x:hover{background:var(--error-soft);color:var(--error)}}.calc__x:disabled{opacity:.3;cursor:default}.calc__add{align-self:flex-start;display:inline-flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-4);border-radius:var(--r-full);border:1px dashed var(--border-strong);font-size:var(--fs-sm);font-weight:var(--fw-medium);color:var(--text-secondary)}.calc__add:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(hover:hover)and (pointer:fine){.calc__add:hover{border-color:var(--accent);color:var(--accent)}}.calc__add.is-on{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.calc__export{display:flex;flex-direction:column;gap:var(--s-3);align-items:stretch}@media(min-width:480px){.calc__export{flex-direction:row;align-items:center;justify-content:space-between}}
