@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;900&family=JetBrains+Mono:wght@400;700&display=swap");:root{--blue:#2563EB;--indigo:#6366F1;--cyan:#06B6D4;--green:#10B981;--bg:#F0F4FF;--white:#FFFFFF;--text:#0F172A;--muted:#64748B;--border:#DDE4F0;--r:16px;--r-sm:10px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans JP,sans-serif;background:var(--bg);color:var(--text);overflow-x:hidden}a{text-decoration:none;color:inherit}nav{position:fixed;top:0;left:0;right:0;z-index:300;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:rgba(255,255,255,.92);border-bottom:1px solid rgba(210,220,240,.6)}.nav-inner{max-width:1200px;margin:0 auto;padding:0 32px;display:flex;align-items:center;gap:32px;height:60px}.nav-brand{display:flex;flex-direction:column;justify-content:center;flex-shrink:0}.nav-logo{font-size:20px;font-weight:900;background:linear-gradient(135deg,var(--blue),var(--indigo));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}.nav-sub{font-size:9px;color:var(--muted);font-weight:500;letter-spacing:.5px}.nav-links{display:flex;gap:20px;list-style:none;flex:1 1}.nav-links a{font-size:13px;font-weight:600;color:var(--muted);transition:color .2s}.nav-links a:hover{color:var(--blue)}.nav-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.btn-try{background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:13px;font-weight:700;padding:9px 20px;border-radius:100px;box-shadow:0 4px 12px rgba(37,99,235,.35);transition:transform .2s,opacity .2s}.btn-try:hover{transform:translateY(-1px);opacity:.92}.hero{padding:100px 32px 72px;position:relative;overflow:hidden;background:linear-gradient(160deg,#EEF3FF,#F0F7FF 40%,#E8F5FF 70%,#EAF9F2);display:flex;align-items:center}.hero:before{background-image:linear-gradient(rgba(99,102,241,.07) 1px,transparent 0),linear-gradient(90deg,rgba(99,102,241,.07) 1px,transparent 0);background-size:36px 36px}.hero:after,.hero:before{content:"";position:absolute;inset:0}.hero:after{background-image:linear-gradient(rgba(99,102,241,.12) 1px,transparent 0),linear-gradient(90deg,rgba(99,102,241,.12) 1px,transparent 0);background-size:180px 180px}.math-deco{position:absolute;font-family:JetBrains Mono,monospace;color:rgba(99,102,241,.14);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none;animation:floatDeco 9s ease-in-out infinite}@keyframes floatDeco{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-16px) rotate(2deg)}}.orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.35;animation:floatOrb 8s ease-in-out infinite}@keyframes floatOrb{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;width:100%;display:grid;grid-template-columns:1fr 1.05fr;grid-gap:40px;gap:40px;align-items:center}.hero-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(99,102,241,.25);color:var(--indigo);font-size:12px;font-weight:700;padding:5px 14px;border-radius:100px;margin-bottom:22px;letter-spacing:.4px}.hero-badge:before{content:"";width:6px;height:6px;background:var(--indigo);border-radius:50%}.hero-title{font-size:48px;font-weight:900;line-height:1.18;margin-bottom:18px;letter-spacing:-1.5px}.hero-title .t1{display:block;color:var(--text)}.hero-title .t2{display:block;background:linear-gradient(135deg,var(--blue),var(--green));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-desc{font-size:14px;color:var(--muted);line-height:1.9;margin-bottom:28px}.hero-btns{display:flex;gap:12px;margin-bottom:36px}.btn-hero-primary{background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;padding:14px 28px;border-radius:8px;font-weight:700;font-size:14px;box-shadow:0 6px 20px rgba(37,99,235,.4);transition:transform .2s,box-shadow .2s}.btn-hero-primary:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(37,99,235,.5)}.btn-hero-sub{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border);color:var(--text);padding:14px 24px;border-radius:8px;font-weight:700;font-size:14px;display:flex;align-items:center;gap:6px;transition:background .2s,transform .2s}.btn-hero-sub:hover{background:rgba(255,255,255,.96);transform:translateY(-2px)}.hero-print-wrap{position:relative}.f-badge{position:absolute;background:rgba(255,255,255,.93);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:10px;padding:10px 14px;box-shadow:0 8px 24px rgba(0,0,0,.1);font-size:11px;font-weight:700}.f-badge.left{left:-50px;bottom:50px}.f-badge.left,.f-badge.top{animation:fb 5s ease-in-out infinite}.f-badge.top{right:-14px;top:14px;animation-delay:2s}@keyframes fb{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}.fn{font-size:18px;font-weight:900;color:var(--indigo);line-height:1.3}.fl{font-size:10px;color:var(--muted)}.grading-ui{background:rgba(255,255,255,.96);border-radius:16px;overflow:hidden;box-shadow:0 32px 80px rgba(37,99,235,.22),0 8px 24px rgba(0,0,0,.1);border:1px solid #e2e8f0;animation:floatCard 6s ease-in-out infinite}@keyframes floatCard{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.grading-top{background:linear-gradient(135deg,#1E3A8A,#2563EB);color:#fff;padding:10px 16px;font-size:12px;font-weight:700;display:flex;justify-content:space-between;align-items:center}.grading-top-right{font-size:10px;font-weight:400;opacity:.7}.grading-tabs{display:flex;background:#F8FAFF;border-bottom:1px solid #e2e8f0;padding:0 12px}.g-tab{display:flex;align-items:center;gap:5px;padding:8px 10px;font-size:11px;font-weight:600;color:#94A3B8;border-bottom:2px solid transparent;white-space:nowrap}.g-tab.done{color:#16A34A}.g-tab.active{color:#2563EB;border-bottom-color:#2563EB}.g-tab-num{width:17px;height:17px;border-radius:50%;background:#E2E8F0;color:#64748B;font-size:9px;font-weight:800;display:flex;align-items:center;justify-content:center}.g-tab.done .g-tab-num{background:#16A34A;color:#fff}.g-tab.active .g-tab-num{background:#2563EB;color:#fff}.grading-subbar{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;border-bottom:1px solid #e2e8f0;font-size:10px}.q-pill{padding:3px 8px;border-radius:100px;font-weight:700;font-size:10px}.q-pill.active{background:#2563EB;color:#fff}.q-pill.done{background:#DCFCE7;color:#16A34A}.q-pill.pending{background:#F1F5F9;color:#64748B}.subbar-progress{margin-left:auto;font-size:10px;font-weight:700;color:#2563EB}.grading-cards{display:flex;gap:8px;padding:14px 12px 16px;background:#F8FAFF}.ans-card{flex:1 1;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;overflow:hidden}.ans-card.active-card{border-color:#2563EB;box-shadow:0 0 0 3px rgba(37,99,235,.15)}.ans-card.graded-ok{border-color:#22C55E;background:#F0FDF4}.ans-card-label{font-size:9px;font-weight:700;padding:4px 7px;background:#F1F5F9;color:#64748B}.ans-card.active-card .ans-card-label{background:#2563EB;color:#fff}.ans-card.graded-ok .ans-card-label{background:#DCFCE7;color:#16A34A}.ans-card-value{font-size:22px;font-weight:900;text-align:center;padding:14px 0 10px;color:#0F172A;font-family:JetBrains Mono,monospace}.ans-card-btns{display:flex;border-top:1px solid #e2e8f0}.ans-btn{flex:1 1;padding:7px 0;text-align:center;font-size:13px;font-weight:900;cursor:pointer}.ans-btn-ok{color:#16A34A;background:#F0FDF4}.ans-btn-ng{color:#DC2626;background:#FEF2F2;border-left:1px solid #e2e8f0}.mid-section{padding:64px 0;background:#fff}.mid-inner{max-width:1200px;margin:0 auto;padding:0 32px}.mid-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:40px;gap:40px;align-items:stretch}.mid-block{display:flex;flex-direction:column}.mid-block .print-preview{flex:1 1}.block-header{justify-content:space-between;margin-bottom:20px}.block-header,.block-title{display:flex;align-items:center}.block-title{gap:8px;font-size:17px;font-weight:800}.see-all{font-size:12px;font-weight:700;color:var(--blue)}.see-all:hover{text-decoration:underline}.tool-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.tool-mini{flex:1 1;background:var(--bg);border:1px solid var(--border);border-radius:var(--r);padding:14px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.tool-mini:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(37,99,235,.12)}.tool-mini-head{display:flex;align-items:center;gap:8px;margin-bottom:8px}.tool-mini-icon{width:36px;height:36px;border-radius:9px;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.ti-blue{background:linear-gradient(135deg,#DBEAFE,#BFDBFE)}.ti-green{background:linear-gradient(135deg,#D1FAE5,#A7F3D0)}.ti-purple{background:linear-gradient(135deg,#EDE9FE,#DDD6FE)}.ti-yellow{background:linear-gradient(135deg,#FEF3C7,#FDE68A)}.tool-mini-name{font-size:13px;font-weight:800;color:var(--blue)}.tool-mini p{font-size:11px;color:var(--muted);line-height:1.6;margin-bottom:10px}.tool-mini-foot{display:flex;align-items:center;justify-content:space-between}.price-sm{font-size:15px;font-weight:900}.price-unit{font-size:10px;font-weight:400;color:var(--muted)}.btn-sm{background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:11px;font-weight:700;padding:6px 14px;border-radius:100px;box-shadow:0 3px 8px rgba(37,99,235,.3);transition:opacity .2s,transform .2s}.btn-sm:hover{opacity:.9;transform:scale(1.03)}.coming-sm{background:#F1F5F9;color:#94A3B8;font-size:11px;font-weight:700;padding:6px 12px;border-radius:100px}.print-preview{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:8px;gap:8px;margin-bottom:16px;flex:1 1}.print-thumb{background:linear-gradient(160deg,#F0F4FF,#E8EEFF);border:1px solid #c7d2fe;border-radius:10px;height:100%;min-height:130px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:12px 10px;position:relative;overflow:hidden}.print-thumb:after{content:"";position:absolute;bottom:0;left:0;right:0;height:50%;background:linear-gradient(transparent,rgba(235,240,255,.5))}.print-lines{position:absolute;top:34px;left:10px;right:10px;display:flex;flex-direction:column;gap:5px}.print-line{height:1.5px;background:rgba(99,102,241,.15);border-radius:2px}.print-line:nth-child(2){width:80%}.print-line:nth-child(3){width:90%}.print-line:nth-child(4){width:70%}.print-line:nth-child(5){width:85%}.print-grade{font-size:9px;font-weight:700;color:var(--indigo);background:rgba(255,255,255,.85);padding:2px 7px;border-radius:100px}.print-grade,.print-name{position:relative;z-index:1}.print-name{font-size:10px;font-weight:800;color:var(--text);line-height:1.4}.print-count{font-size:9px;color:var(--muted);position:relative;z-index:1}.btn-dl{display:flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:14px;font-weight:800;padding:14px;border-radius:10px;box-shadow:0 6px 20px rgba(37,99,235,.35);transition:transform .2s,box-shadow .2s}.btn-dl:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(37,99,235,.45)}.lesson-grid{display:flex;flex-direction:column;gap:10px}.lesson-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--r-sm);padding:14px 16px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.lesson-card:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(37,99,235,.1)}.lesson-tag{font-size:10px;font-weight:700;padding:2px 8px;border-radius:100px;display:inline-block;margin-bottom:6px}.lt-1{background:#EEF2FF;color:var(--indigo)}.lt-2{background:#F0FDF4;color:#059669}.lt-3{background:#FFF7ED;color:#D97706}.lesson-card h4{font-size:13px;font-weight:800;margin-bottom:5px}.lesson-card p{font-size:11px;color:var(--muted);line-height:1.5;margin-bottom:8px}.lesson-meta{font-size:10px;color:#94A3B8}.blog-list{display:flex;flex-direction:column;gap:12px}.blog-item{display:flex;align-items:flex-start;gap:12px;transition:transform .2s}.blog-item:hover{transform:translateX(4px)}.blog-thumb-sm{width:60px;height:60px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:22px;flex-shrink:0}.tb-indigo{background:linear-gradient(135deg,#EEF2FF,#C7D2FE)}.tb-green{background:linear-gradient(135deg,#D1FAE5,#A7F3D0)}.tb-orange{background:linear-gradient(135deg,#FED7AA,#FDBA74)}.blog-chip{font-size:10px;font-weight:700;padding:2px 8px;border-radius:100px;display:inline-block;margin-bottom:4px}.bc-idea{background:#EEF2FF;color:var(--indigo)}.bc-guide{background:#ECFDF5;color:#059669}.bc-ict{background:#FFF7ED;color:#D97706}.blog-item h4{font-size:13px;font-weight:700;line-height:1.5;margin-bottom:5px}.blog-meta-sm{font-size:11px;color:#94A3B8;display:flex;gap:10px}.features-section{padding:72px 0;position:relative;overflow:hidden;background:linear-gradient(160deg,#F0F4FF,#EEF3FF 50%,#EAF9F2)}.features-section:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(99,102,241,.06) 1px,transparent 0),linear-gradient(90deg,rgba(99,102,241,.06) 1px,transparent 0);background-size:36px 36px}.feat-deco{position:absolute;font-family:JetBrains Mono,monospace;color:rgba(99,102,241,.12);font-weight:700;-webkit-user-select:none;-moz-user-select:none;user-select:none}.features-inner{max-width:1200px;margin:0 auto;padding:0 32px;position:relative;z-index:1}.features-title{text-align:center;font-size:26px;font-weight:900;letter-spacing:-1px;margin-bottom:6px}.features-sub{text-align:center;font-size:13px;color:var(--muted);margin-bottom:44px}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.feat-card{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.9);border-radius:var(--r);padding:28px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s}.feat-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(37,99,235,.12)}.feat-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#EEF2FF,#E0E7FF);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:16px}.feat-card h4{font-size:15px;font-weight:800;margin-bottom:8px}.feat-card p{font-size:13px;color:var(--muted);line-height:1.8}.cta-section{padding:72px 32px;text-align:center;position:relative;overflow:hidden;background:linear-gradient(135deg,var(--blue),var(--indigo))}.cta-deco{position:absolute;font-family:JetBrains Mono,monospace;font-weight:700;color:rgba(255,255,255,.08);-webkit-user-select:none;-moz-user-select:none;user-select:none}.cta-section h2{font-size:30px;font-weight:900;color:#fff;margin-bottom:10px;letter-spacing:-1px;position:relative}.cta-section p{font-size:14px;color:rgba(255,255,255,.7);margin-bottom:32px;position:relative}.btn-cta{background:#fff;color:var(--indigo);padding:16px 40px;border-radius:100px;font-size:15px;font-weight:800;display:inline-block;box-shadow:0 8px 28px rgba(0,0,0,.2);transition:transform .2s,box-shadow .2s;position:relative}.btn-cta:hover{transform:translateY(-3px);box-shadow:0 14px 36px rgba(0,0,0,.25)}.cta-note{font-size:11px;color:rgba(255,255,255,.45);margin-top:12px;position:relative}footer{background:#0F172A;color:#475569;padding:36px 32px 20px}.footer-top{max-width:1200px;display:flex;justify-content:space-between;align-items:flex-start;margin:0 auto 28px}.footer-logo{font-size:18px;font-weight:900;background:linear-gradient(135deg,var(--blue),var(--indigo));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.footer-tagline{font-size:11px;color:#334155}.footer-links{display:flex;gap:20px}.footer-links a{color:#475569;font-size:12px}.footer-links a:hover{color:#94A3B8}.footer-bottom{max-width:1200px;margin:0 auto;border-top:1px solid #1e293b;padding-top:18px;font-size:11px;text-align:center}.free-section{padding:72px 0;background:linear-gradient(160deg,#F8FAFF,#F0F4FF);border-top:1px solid var(--border)}.free-inner{max-width:1200px;margin:0 auto;padding:0 32px}.free-header{text-align:center;margin-bottom:44px}.free-tag{display:inline-block;font-size:12px;font-weight:700;background:#DCFCE7;color:#16A34A;padding:4px 14px;border-radius:100px;margin-bottom:14px}.free-title{font-size:26px;font-weight:900;letter-spacing:-.5px;margin-bottom:8px}.free-sub{font-size:13px;color:var(--muted)}.free-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.free-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:24px;display:flex;flex-direction:column;gap:16px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.free-card:hover{transform:translateY(-6px);box-shadow:0 16px 40px rgba(37,99,235,.12)}.free-card-icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;flex-shrink:0}.free-card-body{display:flex;flex-direction:column;gap:8px;flex:1 1}.free-card-top{display:flex;align-items:center;justify-content:space-between}.free-card-title{font-size:16px;font-weight:800}.free-card-badge{font-size:10px;font-weight:700;padding:2px 10px;border-radius:100px}.free-card-desc{font-size:12px;color:var(--muted);line-height:1.8;flex:1 1}.free-card-link{font-size:12px;font-weight:700;margin-top:auto}.reveal{opacity:0;transform:translateY(24px);transition:opacity .55s ease,transform .55s ease}.reveal.visible{opacity:1;transform:translateY(0)}.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.tb-blue{background:linear-gradient(135deg,#DBEAFE,#BFDBFE)}.tb-purple{background:linear-gradient(135deg,#EDE9FE,#DDD6FE)}.bc-blue{background:#EFF6FF;color:#2563EB}.blog-list-empty,.blog-list-loading{font-size:13px;color:var(--muted);padding:24px 0}.blog-list-empty{line-height:1.8}.blog-page{max-width:860px;margin:0 auto;padding:100px 32px 80px}.blog-page-header{margin-bottom:40px}.blog-page-badge{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(99,102,241,.25);color:var(--indigo);font-size:11px;font-weight:700;padding:4px 12px;border-radius:100px;margin-bottom:14px;letter-spacing:.5px}.blog-page-title{font-size:28px;font-weight:900;letter-spacing:-1px;margin-bottom:8px}.blog-page-sub{font-size:13px;color:var(--muted)}.blog-card-list{display:flex;flex-direction:column;gap:12px}.blog-card{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:20px;display:flex;align-items:flex-start;gap:16px;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s}.blog-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(37,99,235,.1)}.blog-thumb{width:72px;height:72px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:30px}.blog-card-body{flex:1 1}.blog-card-body h2{font-size:16px;font-weight:800;margin:6px 0 8px;line-height:1.4;color:var(--text)}.blog-card-meta{font-size:11px;color:#94A3B8;display:flex;gap:10px}.blog-loading{font-size:13px}.blog-empty,.blog-loading{color:var(--muted);padding:60px 0;text-align:center}.blog-empty{font-size:14px;line-height:2}.blog-detail{max-width:720px;margin:0 auto;padding:100px 32px 80px}.blog-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--blue);margin-bottom:32px}.blog-back:hover{text-decoration:underline}.blog-detail-header{margin-bottom:40px}.blog-detail-thumb{width:80px;height:80px;border-radius:18px;margin-bottom:20px;display:flex;align-items:center;justify-content:center;font-size:38px}.blog-detail-title{font-size:26px;font-weight:900;letter-spacing:-.8px;line-height:1.35;margin:10px 0 14px}.blog-detail-meta{font-size:12px;color:#94A3B8;display:flex;gap:12px;align-items:center}.blog-content{font-size:15px;color:var(--text);line-height:1.9}.blog-content p{margin-bottom:1.4em}.blog-content h2{font-size:20px;font-weight:800;margin:2em 0 .8em;padding-bottom:.5em;border-bottom:2px solid var(--border)}.blog-content h3{font-size:17px;font-weight:700;margin:1.6em 0 .6em}.blog-content ul{padding-left:1.5em;margin-bottom:1.4em}.blog-content li{margin-bottom:.4em}.blog-content strong{font-weight:700}.blog-content blockquote{border-left:4px solid var(--indigo);padding:12px 16px;margin:1.4em 0;background:#F0F4FF;border-radius:0 8px 8px 0;color:var(--muted)}.admin-page{max-width:800px;margin:0 auto;padding:100px 32px 80px}.admin-header{margin-bottom:36px}.admin-title{font-size:24px;font-weight:900;margin-bottom:6px}.admin-sub{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:10px}.admin-blog-link{color:var(--blue);font-weight:700;font-size:13px}.admin-blog-link:hover{text-decoration:underline}.admin-notice{margin-top:14px;padding:12px 16px;border-radius:10px;background:#FFF7ED;border:1px solid #fed7aa;color:#92400E;font-size:12px;line-height:1.6}.admin-form-section,.admin-list-section{margin-bottom:44px}.admin-section-title{font-size:17px;font-weight:800;margin-bottom:16px}.admin-form{background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:28px}.form-group,.form-row-2{margin-bottom:20px}.form-row-2{display:grid;grid-template-columns:180px 1fr;grid-gap:20px;gap:20px}.form-label{display:block;font-size:12px;font-weight:700;color:var(--text);margin-bottom:6px}.form-input,.form-select{width:100%;padding:10px 14px;font-size:14px;font-family:inherit;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg);color:var(--text);transition:border-color .2s;outline:none}.form-input:focus,.form-select:focus{border-color:var(--blue);background:#fff}.form-textarea{width:100%;padding:12px 14px;font-size:14px;font-family:JetBrains Mono,monospace;border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg);color:var(--text);line-height:1.7;resize:vertical;min-height:300px;outline:none;transition:border-color .2s}.form-textarea:focus{border-color:var(--blue);background:#fff}.form-hint{font-size:11px;color:var(--muted);margin-top:6px}.emoji-row{display:flex;gap:6px;flex-wrap:wrap}.emoji-btn{width:42px;height:42px;border-radius:10px;border:2px solid var(--border);background:var(--bg);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .15s,background .15s}.emoji-btn.selected{background:#EEF2FF}.emoji-btn.selected,.emoji-btn:hover{border-color:var(--blue)}.form-actions{margin-top:4px}.btn-submit{background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:14px;font-weight:700;padding:12px 32px;border-radius:100px;border:none;cursor:pointer;font-family:inherit;box-shadow:0 4px 14px rgba(37,99,235,.35);transition:transform .2s,opacity .2s}.btn-submit:hover{transform:translateY(-1px);opacity:.92}.btn-submit:disabled{opacity:.5;cursor:default;transform:none}.admin-msg{font-size:13px;padding:10px 14px;border-radius:8px;margin-top:14px}.admin-msg.ok{background:#ECFDF5;color:#059669}.admin-msg.err{background:#FEF2F2;color:#DC2626}.admin-empty{font-size:13px;color:var(--muted)}.admin-list{display:flex;flex-direction:column;gap:8px}.admin-post-row{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:10px;padding:14px 16px}.admin-post-emoji{font-size:24px;flex-shrink:0}.admin-post-info{flex:1 1;min-width:0}.admin-post-title{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-post-date{font-size:11px;color:#94A3B8;margin-top:2px}.btn-preview{background:#EFF6FF;color:var(--blue);border:1px solid #bfdbfe;font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;white-space:nowrap;transition:background .15s}.btn-preview:hover{background:#DBEAFE}.btn-edit{background:#F0FDF4;color:#059669;border:1px solid #a7f3d0;font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s}.btn-edit:hover{background:#DCFCE7}.btn-cancel{margin-left:10px;background:#F1F5F9;color:var(--muted);border:1px solid var(--border);font-size:13px;font-weight:700;padding:10px 20px;border-radius:100px;cursor:pointer;font-family:inherit;transition:background .15s}.btn-cancel:hover{background:#E2E8F0}.btn-delete{background:#FEF2F2;color:#DC2626;border:1px solid #fecaca;font-size:11px;font-weight:700;padding:6px 12px;border-radius:8px;cursor:pointer;font-family:inherit;white-space:nowrap;transition:background .15s}.btn-delete:hover{background:#FEE2E2}.aff-card{display:flex;align-items:center;gap:20px;border:1px solid var(--border);border-radius:12px;padding:20px 24px;background:#fff;margin:24px 0;color:var(--text);cursor:default}.aff-card-body{flex:1 1;min-width:0}.aff-card-title{font-size:16px;font-weight:700;margin-bottom:6px;line-height:1.4}.aff-card-domain{font-size:12px;color:var(--muted);margin-bottom:10px}.aff-card-price{font-size:20px;font-weight:900;color:var(--text);margin-bottom:14px}.aff-card-btn{display:inline-block;background:#1a1a1a;color:#fff!important;font-size:14px;font-weight:700;padding:11px 22px;border-radius:8px;text-decoration:none!important;transition:opacity .2s}.aff-card-btn:hover{opacity:.8}.aff-card-img{width:120px;height:auto;max-height:160px;border-radius:8px;object-fit:contain;flex-shrink:0}.editor-body .aff-card{pointer-events:none;opacity:.9}.tb-link{color:var(--indigo);border-color:#C7D2FE;background:#EEF2FF}.tb-link:hover{background:#E0E7FF}.modal-overlay{position:fixed;inset:0;z-index:500;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:20px}.modal-box{background:#fff;border-radius:var(--r);padding:28px;width:100%;max-width:480px;box-shadow:0 24px 60px rgba(0,0,0,.2);max-height:90vh;overflow-y:auto}.modal-title{font-size:17px;font-weight:800;margin-bottom:20px}.modal-actions{display:flex;gap:10px;margin-top:8px}.ogp-url-row{display:flex;gap:8px}.ogp-url-row .form-input{flex:1 1}.btn-ogp-fetch{flex-shrink:0;padding:10px 18px;font-size:13px;font-weight:700;font-family:inherit;border:none;border-radius:var(--r-sm);cursor:pointer;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;box-shadow:0 3px 10px rgba(37,99,235,.3);transition:opacity .2s;white-space:nowrap}.btn-ogp-fetch:hover{opacity:.88}.btn-ogp-fetch:disabled{opacity:.45;cursor:default}.ogp-err{color:#DC2626}.ogp-err,.ogp-ok{font-size:12px;margin-top:6px}.ogp-ok{color:#059669}.ogp-preview{margin:16px 0;pointer-events:none}.editor-wrap{border:1.5px solid var(--border);border-radius:var(--r-sm);background:var(--bg);transition:border-color .2s;overflow:hidden}.editor-wrap:focus-within{border-color:var(--blue);background:#fff}.editor-toolbar{display:flex;align-items:center;gap:4px;flex-wrap:wrap;padding:8px 10px;border-bottom:1px solid var(--border);background:#F8FAFF}.tb-btn{padding:5px 10px;font-size:12px;font-weight:700;font-family:inherit;border:1px solid var(--border);border-radius:6px;background:#fff;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s}.tb-btn.active,.tb-btn:hover{background:#EEF2FF;border-color:var(--indigo)}.tb-btn.active{color:var(--indigo)}.tb-img{color:var(--blue);border-color:#BFDBFE;background:#EFF6FF}.tb-img:hover{background:#DBEAFE}.tb-sep{width:1px;height:20px;background:var(--border);margin:0 4px}.editor-body{min-height:300px;padding:14px 16px;font-size:14px;line-height:1.8;color:var(--text);outline:none}.editor-body p{margin-bottom:.8em}.editor-body h2{font-size:18px;font-weight:800;margin:1.4em 0 .6em;padding-bottom:.4em;border-bottom:2px solid var(--border)}.editor-body ul{padding-left:1.4em;margin-bottom:.8em}.editor-body li{margin-bottom:.3em}.editor-body blockquote{border-left:4px solid var(--indigo);padding:8px 14px;margin:.8em 0;background:#F0F4FF;border-radius:0 6px 6px 0;color:var(--muted)}.editor-body img{max-width:100%;border-radius:8px;margin:12px 0;display:block}.editor-body p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:#94A3B8;pointer-events:none;float:left;height:0}.editor-uploading{padding:8px 14px;font-size:12px;color:var(--blue);background:#EFF6FF;border-top:1px solid #bfdbfe}.import-toggle-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-top:6px}.btn-import-toggle{font-size:12px;font-weight:700;font-family:inherit;white-space:nowrap;padding:6px 14px;border-radius:100px;border:1.5px solid var(--indigo);background:#EEF2FF;color:var(--indigo);cursor:pointer;transition:background .15s;flex-shrink:0}.btn-import-toggle:hover{background:#E0E7FF}.import-panel{margin-top:12px;padding:16px;border-radius:var(--r-sm);background:#F8FAFF;border:1.5px solid #c7d2fe}.import-hint{font-size:12px;color:var(--muted);margin-bottom:10px;line-height:1.7}.import-hint span{font-family:JetBrains Mono,monospace;font-size:11px;color:var(--indigo)}.import-textarea{background:#fff}.btn-apply-import{margin-top:10px;padding:9px 22px;font-size:13px;font-weight:700;font-family:inherit;border:none;border-radius:100px;cursor:pointer;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;box-shadow:0 3px 10px rgba(37,99,235,.3);transition:opacity .2s,transform .2s}.btn-apply-import:hover{opacity:.9;transform:translateY(-1px)}.btn-apply-import:disabled{opacity:.4;cursor:default;transform:none}.import-warn{font-size:11px;color:#94A3B8;margin-top:8px}.cr-section{padding:88px 0;background:#fff;border-top:1px solid var(--border)}.cr-section.cr-alt{background:#F7F9FF}.cr-section.cr-dark{background:linear-gradient(135deg,#0F172A,#1E2D5A 60%,#1a3a5c);border-top:none}.cr-section.cr-premium{background:linear-gradient(135deg,#EEF2FF,#E8EEFF 60%,#EDE9FE)}.cr-inner{max-width:1100px;margin:0 auto;padding:0 48px;display:flex;align-items:center;gap:72px}.cr-inner.cr-rev{flex-direction:row-reverse}.cr-text{flex:1 1;min-width:0}.cr-visual{flex:1 1;display:flex;justify-content:center;align-items:center}.cr-tag{display:inline-block;font-size:11px;font-weight:700;padding:4px 12px;border-radius:100px;margin-bottom:16px;letter-spacing:.5px}.cr-tag-free{background:#DCFCE7;color:#16A34A}.cr-tag-paid{background:#FEF3C7;color:#D97706}.cr-tag-update{background:#DBEAFE;color:#2563EB}.cr-title{font-size:32px;font-weight:900;letter-spacing:-1px;line-height:1.2;margin-bottom:18px;color:var(--text)}.cr-title-light{color:#fff}.cr-desc{font-size:14px;color:var(--muted);line-height:2;margin-bottom:32px}.cr-desc-light{color:rgba(255,255,255,.65)}.cr-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:8px;font-size:14px;font-weight:700;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;box-shadow:0 6px 20px rgba(37,99,235,.35);transition:transform .2s,box-shadow .2s}.cr-btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(37,99,235,.45)}.cr-btn-white{background:#fff;color:var(--indigo);box-shadow:0 6px 20px rgba(0,0,0,.2)}.cr-btn-white:hover{box-shadow:0 10px 28px rgba(0,0,0,.28)}.print-stack{width:100%;display:flex;flex-direction:column;gap:10px}.print-row-card{background:linear-gradient(135deg,#F0F4FF,#E8EEFF);border:1px solid #c7d2fe;border-radius:12px;padding:14px 18px;display:flex;align-items:center;gap:16px;transition:transform .2s,box-shadow .2s;animation:slideIn .4s ease both;animation-delay:calc(var(--di, 0) * .07s)}@keyframes slideIn{0%{opacity:0;transform:translateX(16px)}to{opacity:1;transform:translateX(0)}}.print-row-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(99,102,241,.15)}.prc-grade{font-size:10px;font-weight:700;color:var(--indigo);background:rgba(255,255,255,.85);padding:3px 10px;border-radius:100px;flex-shrink:0}.prc-lines{flex:0 0 60px;display:flex;flex-direction:column;gap:4px}.prc-line{height:2px;background:rgba(99,102,241,.2);border-radius:2px;width:100%}.prc-info{flex:1 1;min-width:0}.prc-name{font-size:13px;font-weight:800;color:var(--text)}.prc-count{font-size:11px;color:var(--muted);margin-top:2px}.prc-dl{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--indigo));color:#fff;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.print-coming{text-align:center;font-size:12px;color:var(--muted);background:#F8FAFF;border:1px dashed var(--border);border-radius:10px;padding:12px}.quiz-mock{width:100%;border-radius:16px;overflow:hidden;box-shadow:0 24px 60px rgba(99,102,241,.25),0 6px 20px rgba(0,0,0,.1);background:#fff}.quiz-mock-header{background:linear-gradient(135deg,#6C3BE2,#4F6FF5 50%,#38B6FF);padding:28px 20px 24px;text-align:center}.quiz-mock-icon{font-size:28px;margin-bottom:8px}.quiz-mock-title{font-size:22px;font-weight:900;color:#fff;letter-spacing:-.5px;margin-bottom:6px}.quiz-mock-sub{font-size:12px;color:rgba(255,255,255,.75)}.quiz-mock-body{background:#F2F4FB;padding:16px}.quiz-mock-filters{display:flex;gap:8px;margin-bottom:14px}.qmf{padding:5px 14px;border-radius:100px;font-size:12px;font-weight:600;background:#fff;color:#64748B;border:1px solid #e2e8f0}.qmf-active{background:linear-gradient(135deg,#6C3BE2,#4F6FF5);color:#fff;border-color:transparent}.quiz-mock-cards{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.qmc{background:#fff;border-radius:12px;padding:14px;box-shadow:0 2px 8px rgba(0,0,0,.06)}.qmc-top{gap:8px;margin-bottom:8px}.qmc-icon,.qmc-top{display:flex;align-items:center}.qmc-icon{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,#EDE9FE,#DDD6FE);justify-content:center;font-size:12px;font-weight:700;color:#6C3BE2}.qmc-grade{font-size:10px;color:#94A3B8;font-weight:600}.qmc-title{font-size:12px;font-weight:700;color:#1E293B;line-height:1.4;margin-bottom:4px}.qmc-count{font-size:10px;color:#94A3B8;margin-bottom:10px}.qmc-btn{background:linear-gradient(135deg,#6C3BE2,#4F6FF5);color:#fff;text-align:center;border-radius:8px;padding:7px;font-size:12px;font-weight:700}.lib-list{width:100%;display:flex;flex-direction:column;gap:10px}.lib-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:16px 20px;transition:transform .2s,box-shadow .2s}.lib-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,99,235,.1)}.lib-title{font-size:14px;font-weight:700;margin:8px 0 6px;line-height:1.5}.lib-meta{font-size:11px;color:#94A3B8}.blog-row-list{width:100%;display:flex;flex-direction:column;gap:12px}.blog-row-item{display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--border);border-radius:12px;padding:14px 18px;transition:transform .2s,box-shadow .2s}.blog-row-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,99,235,.1)}.blog-row-body{flex:1 1;min-width:0}.blog-row-title{font-size:14px;font-weight:700;line-height:1.4;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.blog-row-date{font-size:11px;color:#94A3B8}.blog-row-empty{font-size:13px;color:var(--muted);padding:24px 0;line-height:1.8}.tools-mock{width:100%}.tools-price-row{margin-bottom:28px}.tools-price-main{display:flex;align-items:baseline;gap:10px;background:rgba(99,102,241,.08);border:1px solid rgba(99,102,241,.2);border-radius:12px;padding:16px 20px}.tools-price-name{font-size:14px;font-weight:700;color:var(--text)}.tools-price-val{font-size:28px;font-weight:900;color:var(--indigo);margin-left:auto}.tools-price-unit{font-size:11px;color:var(--muted)}.tools-coming-list{display:flex;flex-direction:column;gap:8px;margin-top:20px}.tools-coming-item{font-size:12px;display:flex;align-items:center;gap:8px}.tools-coming-item-light{color:var(--muted)}.nav-hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.nav-hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .25s,opacity .25s}@media (max-width:860px){.nav-hamburger{display:flex}.nav-links{display:none;position:absolute;top:60px;left:0;right:0;background:rgba(255,255,255,.98);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);flex-direction:column;gap:0;padding:8px 0;z-index:200}.nav-links.open{display:flex}.nav-links li a{display:block;padding:14px 24px;font-size:15px}.nav-right{display:none}.hero{padding:80px 20px 52px}.hero-inner{grid-template-columns:1fr;gap:36px}.hero-print-wrap{display:none}.hero-title{font-size:36px;letter-spacing:-1px}.hero-btns{flex-wrap:wrap;gap:10px}.btn-hero-primary,.btn-hero-sub{width:100%;justify-content:center;text-align:center}.cr-inner{flex-direction:column!important;gap:40px;padding:0 20px}.cr-section{padding:56px 0}.cr-title{font-size:26px}.cr-visual{width:100%}.quiz-mock-header{padding:20px 16px 18px}.quiz-mock-title{font-size:18px}.quiz-mock-cards{grid-template-columns:1fr 1fr}.footer-top{flex-direction:column;gap:20px}.footer-links{flex-wrap:wrap;gap:14px}}@media (max-width:480px){.hero-title{font-size:30px}.cr-title{font-size:22px}.cr-desc{font-size:13px}.cr-btn{width:100%;justify-content:center;text-align:center;padding:14px 20px}.cr-inner{padding:0 16px}.cr-section{padding:48px 0}.prc-lines{display:none}.print-row-card{gap:10px}.quiz-mock-cards{grid-template-columns:1fr}.quiz-mock-body{padding:12px}.tools-mock{display:none}.blog-row-title{white-space:normal}.admin-page,.blog-detail,.blog-page{padding:90px 16px 60px}.blog-detail-title{font-size:20px}.blog-card{flex-direction:column;gap:12px}.blog-thumb{width:52px;height:52px;font-size:22px}.form-row-2{grid-template-columns:1fr}.admin-post-row{flex-wrap:wrap}.features-grid{grid-template-columns:1fr}.hero-badge{font-size:11px}}.prints-page{max-width:880px;margin:0 auto;padding:100px 32px 80px}.prints-head{text-align:center;margin-bottom:44px}.prints-h1{font-size:34px;font-weight:900;color:var(--text);margin:14px 0 12px;letter-spacing:-.02em}.prints-lead{font-size:15px;line-height:1.9;color:var(--muted)}.prints-lead strong{color:var(--text);font-weight:800}.prints-units{display:flex;flex-direction:column;gap:18px}.prints-unit{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px 24px;box-shadow:0 4px 16px rgba(15,23,42,.04)}.prints-unit-head{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}.prints-grade{flex:0 0 auto;background:linear-gradient(135deg,#6366F1,#2563EB);color:#fff;font-size:13px;font-weight:800;padding:5px 12px;border-radius:8px;margin-top:2px}.prints-unit-meta{flex:1 1;min-width:0}.prints-unit-name{font-size:19px;font-weight:900;color:var(--text);margin:0 0 4px}.prints-unit-desc{font-size:13px;color:var(--muted);margin:0;line-height:1.6}.prints-unit-count{display:inline-block;font-weight:800;color:#2563EB;white-space:nowrap}.prints-variants{display:flex;flex-wrap:wrap;gap:10px}.prints-dl-btn{display:inline-flex;align-items:center;gap:8px;background:#F0F4FF;border:1px solid #dbe3ff;border-radius:10px;padding:10px 16px;text-decoration:none;transition:all .15s}.prints-dl-btn:hover{background:#E2E9FF;transform:translateY(-1px);box-shadow:0 6px 16px rgba(37,99,235,.18)}.pdl-v{font-size:14px;font-weight:900;color:var(--text)}.pdl-ico{font-size:13px;font-weight:700;color:#2563EB}.prints-note{text-align:center;font-size:13px;color:var(--muted);line-height:1.9;margin-top:40px}.prints-note a{color:#2563EB;font-weight:700}@media (max-width:480px){.prints-page{padding:88px 18px 64px}.prints-h1{font-size:26px}.prints-unit{padding:18px 16px}.prints-variants{gap:8px}.prints-dl-btn{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 8px);justify-content:center;padding:12px 10px}}.prints-view-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:11px;text-decoration:none;background:#2563EB;color:#fff;font-weight:700;font-size:14.5px;transition:background .15s,transform .15s,box-shadow .15s}.prints-view-btn:hover{background:#1D4ED8;transform:translateY(-1px);box-shadow:0 6px 16px rgba(37,99,235,.28)}.pv-back{color:#2563EB;text-decoration:none;font-size:14px;font-weight:600}.pv-back:hover{text-decoration:underline}.pv-wrap{margin-top:22px}.pv-toolbar{justify-content:space-between;align-items:center;gap:12px}.pv-toolbar,.pv-variants{display:flex;flex-wrap:wrap}.pv-variants{gap:8px}.pv-vbtn{padding:9px 18px;border-radius:9px;border:1.5px solid #c7d4f2;background:#fff;color:#2563EB;font-weight:700;font-size:14px;cursor:pointer;transition:all .15s}.pv-vbtn:hover{background:#EEF2FF}.pv-vbtn.active{background:#2563EB;border-color:#2563EB;color:#fff}.pv-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.pv-dl{display:inline-block;padding:11px 20px;border-radius:10px;text-decoration:none;background:#10B981;color:#fff;font-weight:700;font-size:14px;transition:background .15s,transform .15s}.pv-dl:hover{background:#059669;transform:translateY(-1px)}.pv-open{color:#6B7280;font-size:13px;text-decoration:none}.pv-open:hover{color:#2563EB;text-decoration:underline}.pv-hint{margin-top:12px;font-size:13px;color:#6B7280}.pv-frame-box{margin-top:12px;border:1px solid #e5e9f2;border-radius:14px;overflow:hidden;background:#F8FAFD;box-shadow:0 10px 30px rgba(15,23,42,.06)}.pv-frame{display:block;width:100%;height:72vh;min-height:480px;border:none}.pv-bottom{margin-top:18px;text-align:center}.pv-dl-big{font-size:16px;padding:14px 34px}@media (max-width:640px){.pv-frame{height:60vh;min-height:380px}.pv-toolbar{flex-direction:column;align-items:stretch}.pv-actions{justify-content:space-between}}