:root,[data-theme=light]{color-scheme:light;--green-50: #f0faf0;--green-100: #d4f0d4;--green-200: #a8e6a3;--green-300: #7dd87d;--green-400: #6bc96b;--green-500: #5cb85c;--green-600: #4a9e4a;--green-glow: rgba(107, 201, 107, .45);--green-glow-soft: rgba(107, 201, 107, .18);--white: #ffffff;--gray-50: #fafafa;--gray-100: #f5f5f7;--gray-200: #e8e8ed;--gray-300: #d2d2d7;--gray-400: #aeaeb2;--gray-500: #8e8e93;--gray-600: #636366;--gray-650: #56565a;--gray-700: #48484a;--gray-800: #3a3a3c;--gray-900: #1d1d1f;--bg-page: #dfead8;--bg-ambient-1: rgba(168, 230, 163, .42);--bg-ambient-2: rgba(255, 248, 220, .32);--bg-ambient-3: rgba(135, 206, 180, .28);--glass-bg: rgba(255, 255, 255, .3);--glass-border: rgba(255, 255, 255, .42);--glass-shadow: 0 8px 40px rgba(0, 0, 0, .04), 0 2px 12px rgba(107, 201, 107, .06), inset 0 1px 0 rgba(255, 255, 255, .55);--glass-blur: 40px;--glass-blur-compact: 12px;--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .04);--card-blur: 0px;--card-shadow: 0 8px 32px rgba(0, 0, 0, .06), 0 2px 8px rgba(0, 0, 0, .03);--ambient-overlay: linear-gradient( 180deg, rgba(255, 255, 255, .38) 0%, rgba(245, 252, 246, .3) 45%, rgba(236, 248, 240, .32) 100% );--ambient-filter: brightness(.92) saturate(.85);--text-primary: var(--gray-900);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--text-accent: var(--green-500);--text-on-accent: #f6fff7;--form-title-color: #717175;--hero-title-color: var(--gray-650);--control-height: 50px;--control-height-compact: 46px;--control-border-width: 2px;--control-radius-pill: var(--radius-full);--control-radius-checkbox: 5px;--input-bg: #f4f9f5;--input-border: rgba(126, 210, 138, .45);--input-shadow: none;--input-shadow-focus: none;--input-bg-focus: #ffffff;--input-text-focus: var(--text-primary);--input-icon-focus: #5cb85c;--input-placeholder: #8aab8e;--input-placeholder-engrave: none;--input-border-focus: #7dd87d;--divider-line: rgba(126, 210, 138, .3);--btn-primary-bg: linear-gradient(135deg, #92eea0 0%, #7ee88a 50%, #6ed97a 100%);--btn-pill-fill: #92eea0;--btn-pill-fill-hover: #7ee88a;--btn-primary-shadow: 0 4px 16px rgba(92, 184, 92, .35);--btn-primary-hover-shadow: 0 8px 28px rgba(92, 184, 92, .5);--color-error: #e74c3c;--mouse-light-color: rgba(168, 230, 163, .12);--mouse-light-size: 600px;--webgl-opacity: .38;--hero-accent: var(--green-400);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-medium: .35s cubic-bezier(.4, 0, .2, 1);--transition-slow: .6s cubic-bezier(.4, 0, .2, 1);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--font-serif: "Noto Serif JP", "Zen Old Mincho", "Shippori Mincho", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", "MS PMincho", serif;--font-ui: "Noto Sans JP", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family: var(--font-ui)}[data-theme=dark]{color-scheme:dark;--bg-page: #0d1110;--bg-ambient-1: rgba(74, 158, 74, .15);--bg-ambient-2: rgba(60, 80, 60, .12);--bg-ambient-3: rgba(40, 60, 50, .18);--glass-bg: rgba(20, 28, 24, .65);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .2);--glass-blur: 28px;--card-bg: rgba(24, 32, 28, .92);--card-border: rgba(255, 255, 255, .06);--card-blur: 0px;--card-shadow: 0 4px 24px rgba(0, 0, 0, .35);--ambient-overlay: linear-gradient( 180deg, rgba(18, 28, 22, .35) 0%, rgba(14, 24, 18, .3) 50%, rgba(12, 20, 16, .32) 100% );--ambient-filter: brightness(.6) saturate(.85);--text-primary: #f5f5f7;--text-secondary: #aeaeb2;--text-muted: #636366;--text-accent: var(--green-300);--form-title-color: var(--text-primary);--hero-title-color: rgba(245, 245, 247, .9);--input-bg: rgba(36, 48, 40, .95);--input-border: rgba(126, 210, 138, .22);--input-shadow: none;--input-shadow-focus: none;--input-bg-focus: rgba(42, 56, 46, .98);--input-text-focus: #f5f5f7;--input-icon-focus: #8ede93;--input-placeholder-engrave: none;--input-border-focus: #7dd87d;--input-placeholder: #7a9a7e;--divider-line: rgba(126, 210, 138, .18);--btn-primary-bg: linear-gradient(135deg, #7ee88a 0%, #6ed97a 50%, #5fd06d 100%);--btn-pill-fill: #72d47f;--btn-pill-fill-hover: #84e090;--btn-primary-shadow: 0 4px 16px rgba(74, 158, 74, .3);--btn-primary-hover-shadow: 0 8px 28px rgba(74, 158, 74, .45);--color-error: rgba(231, 76, 60, .65);--mouse-light-color: rgba(107, 201, 107, .08);--webgl-opacity: .28;--hero-accent: var(--green-300)}:is(.glass-panel,.theme-toggle){background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);transition:background var(--transition-slow),border-color var(--transition-slow),box-shadow var(--transition-slow)}.glass-panel{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.theme-toggle{backdrop-filter:blur(var(--glass-blur-compact));-webkit-backdrop-filter:blur(var(--glass-blur-compact))}:is(.form-input,.password-toggle,.btn-social,.checkbox-custom){background:var(--input-bg);border:var(--control-border-width) solid var(--input-border);box-shadow:var(--input-shadow);transition:background var(--transition-medium),border-color var(--transition-fast),color var(--transition-medium),box-shadow var(--transition-medium)}.form-input:focus{background:var(--input-bg-focus);border-color:var(--input-border-focus);box-shadow:var(--input-shadow-focus);color:var(--input-text-focus)}:is(.password-toggle:hover){background:var(--input-bg-focus);border-color:var(--input-border-focus)}.btn-social:hover{background:var(--input-bg-focus);border-color:var(--green-400)}.input-wrapper:focus-within .password-toggle{background:var(--input-bg-focus);color:var(--input-icon-focus);border-color:var(--input-border-focus)}:is(.form-input,.password-toggle,.btn-social,.btn-pill__shell){border-radius:var(--control-radius-pill)}.checkbox-custom{border-radius:var(--control-radius-checkbox)}.form-input,.btn-pill--e .btn-pill__shell{height:var(--control-height)}.btn-social{height:var(--control-height-compact)}.glass-btn{--gb-text: #2E7D32;font-family:var(--font-ui, "Noto Sans JP", "Inter", system-ui, sans-serif);--gb-icon: #3f9a4f;--gb-border: linear-gradient(180deg, #F2F2F2 0%, #9A9A9A 41.4%, #FFFFFF 100%);--gb-height: 64px;--gb-font-size: 20px;--gb-padding-x: 40px;--gb-gap: 9px;--gb-icon-size: 22px;--gb-border-width: 1.5px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--gb-gap);height:var(--gb-height);padding:0 var(--gb-padding-x);border:none;border-radius:999px;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;color:var(--gb-text);font-family:inherit;font-size:var(--gb-font-size);font-weight:700;letter-spacing:-.02em;white-space:nowrap;text-shadow:0 1px 1px rgba(255,255,255,.35);background:radial-gradient(130% 170% at 18% -35%,#fffc,#fff0 46%),linear-gradient(180deg,#ffffff8c,#ffffff26 48%,#ffffff0a),#d6d6d659;box-shadow:0 1px 2px #00000012,0 6px 14px #0000001a,0 24px 28px #00000014,0 60px 40px #0000000a,inset 0 1px #ffffffd9,inset 0 -1px 1px #ffffff4d,inset 0 -10px 18px -10px #0000001a;transition:transform .22s cubic-bezier(.2,.8,.3,1),box-shadow .22s ease}@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))){.glass-btn{-webkit-backdrop-filter:blur(10px) saturate(1.3) brightness(1.03);backdrop-filter:blur(10px) saturate(1.3) brightness(1.03)}}.glass-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:var(--gb-border-width);background:var(--gb-border);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.glass-btn:hover{transform:translateY(-2px);box-shadow:0 2px 3px #00000014,0 8px 18px #0000001c,0 32px 36px #00000017,0 72px 48px #0000000d,inset 0 1px #fffffff2,inset 0 -1px 1px #ffffff59,inset 0 -10px 18px -10px #0000001f}.glass-btn:active{transform:translateY(1px) scale(.985);box-shadow:0 1px 2px #00000014,0 4px 10px #00000014,inset 0 2px 6px #00000024,inset 0 1px #ffffff80}.glass-btn:focus-visible{outline:3px solid rgba(31,42,55,.35);outline-offset:3px}.glass-btn:disabled{opacity:.55;cursor:wait;transform:none}.glass-btn svg{width:var(--gb-icon-size);height:var(--gb-icon-size);flex-shrink:0;color:var(--gb-icon)}.glass-btn .gb-img-icon{width:1.9em;height:1.9em;object-fit:contain;flex-shrink:0}.glass-btn--sm{--gb-height: 44px;--gb-font-size: 14px;--gb-padding-x: 24px;--gb-gap: 7px;--gb-icon-size: 16px;--gb-border-width: 1.2px;font-weight:600;letter-spacing:0}.glass-btn--md{--gb-height: 54px;--gb-font-size: 15px;--gb-padding-x: 26px;--gb-gap: 10px;--gb-icon-size: 18px;--gb-border-width: 1.2px}.glass-btn--block{width:100%}.glass-btn--primary{--gb-text: #1B5E20;--gb-icon: #1B5E20;--gb-border: linear-gradient(180deg, #EAF6EC 0%, #6FAF7A 41.4%, #E2F1E5 100%);background:radial-gradient(130% 170% at 18% -35%,#ffffff8c,#fff0 46%),linear-gradient(180deg,#ffffff61,#ffffff1f 48%,#3f9a4f1a),#3f9a4f29;box-shadow:0 1px 2px #1b5e201a,0 6px 14px #2e7d3229,0 24px 28px #2e7d321f,0 60px 40px #2e7d320f,inset 0 1px #ffffffd9,inset 0 -1px 1px #ffffff4d,inset 0 -10px 18px -10px #1b5e2024}.glass-btn--primary:hover{box-shadow:0 2px 3px #1b5e201f,0 8px 18px #2e7d3233,0 32px 36px #2e7d3224,0 72px 48px #2e7d3212,inset 0 1px #fffffff2,inset 0 -1px 1px #ffffff59,inset 0 -10px 18px -10px #1b5e2029}.glass-btn--primary:active{box-shadow:0 1px 2px #1b5e201f,0 4px 10px #2e7d3224,inset 0 2px 6px #1b5e202e,inset 0 1px #ffffff80}.glass-btn--danger{--gb-text: #B91C1C;--gb-icon: #B91C1C;--gb-border: linear-gradient(180deg, #FDECEC 0%, #E8A5A5 41.4%, #F9E0E0 100%);background:radial-gradient(130% 170% at 18% -35%,#ffffff8c,#fff0 46%),linear-gradient(180deg,#ffffff61,#ffffff1f 48%,#dc262612),#dc26261a;box-shadow:0 1px 2px #b91c1c14,0 6px 14px #b91c1c21,0 24px 28px #b91c1c1a,0 60px 40px #b91c1c0d,inset 0 1px #ffffffd9,inset 0 -1px 1px #ffffff4d,inset 0 -10px 18px -10px #b91c1c1f}.glass-btn--danger:hover{box-shadow:0 2px 3px #b91c1c1a,0 8px 18px #b91c1c2b,0 32px 36px #b91c1c1f,0 72px 48px #b91c1c0f,inset 0 1px #fffffff2,inset 0 -1px 1px #ffffff59,inset 0 -10px 18px -10px #b91c1c24}.glass-btn--danger:active{box-shadow:0 1px 2px #b91c1c1a,0 4px 10px #b91c1c1f,inset 0 2px 6px #b91c1c29,inset 0 1px #ffffff80}.glass-btn--tert{background:none;box-shadow:none;text-shadow:none}.glass-btn--tert:before{display:none}.glass-btn--tert:hover{transform:none;background:#ffffff80;box-shadow:inset 0 0 0 1px #2e7d3224}.glass-btn--tert:active{transform:scale(.98);background:#ffffffa6;box-shadow:inset 0 0 0 1px #2e7d3233}[data-theme=dark] .glass-btn{--gb-text: var(--green-200);--gb-icon: var(--green-300);--gb-border: linear-gradient(180deg, rgba(255,255,255,.32) 0%, rgba(255,255,255,.1) 41.4%, rgba(255,255,255,.24) 100%);text-shadow:0 1px 1px rgba(0,0,0,.45);background:radial-gradient(130% 170% at 18% -35%,#ffffff29,#fff0 46%),linear-gradient(180deg,#ffffff1f,#ffffff0a 48%,#ffffff05),#ffffff0f;box-shadow:0 1px 2px #0006,0 6px 14px #00000073,0 24px 28px #00000059,inset 0 1px #fff3,inset 0 -1px 1px #ffffff14,inset 0 -10px 18px -10px #00000080}[data-theme=dark] .glass-btn--primary{--gb-text: var(--green-100);--gb-icon: var(--green-200);--gb-border: linear-gradient(180deg, rgba(125,216,125,.42) 0%, rgba(63,154,79,.22) 41.4%, rgba(125,216,125,.3) 100%);background:radial-gradient(130% 170% at 18% -35%,#7dd87d29,#7dd87d00 46%),linear-gradient(180deg,#7dd87d21,#7dd87d0a 48%,#3f9a4f14),#3f9a4f24}[data-theme=dark] .glass-btn--danger{--gb-text: #f0938a;--gb-icon: #f0938a;--gb-border: linear-gradient(180deg, rgba(240,147,138,.42) 0%, rgba(217,45,32,.22) 41.4%, rgba(240,147,138,.3) 100%);background:radial-gradient(130% 170% at 18% -35%,#f0938a29,#f0938a00 46%),linear-gradient(180deg,#f0938a21,#f0938a0a 48%,#d92d2014),#d92d2024}[data-theme=dark] .glass-btn--tert{background:none;box-shadow:none}[data-theme=dark] .glass-btn--tert:hover{background:#ffffff14;box-shadow:inset 0 0 0 1px #7dd87d2e}[data-theme=dark] .glass-btn--tert:active{background:#ffffff1f;box-shadow:inset 0 0 0 1px #7dd87d42}@media(prefers-reduced-motion:reduce){.glass-btn{transition:none}}
