:root{--ink:#172337;--muted:#637084;--blue:#246bfd;--blue-dark:#1555d8;--line:#e7ebf1;--soft:#f6f8fc;--white:#fff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.7;background:#fff}
a{color:var(--blue);text-decoration:none}a:hover{color:var(--blue-dark)}
.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:1000}
.navbar{padding:.9rem 0}
.navbar-brand{font-weight:800;letter-spacing:-.04em;color:var(--ink)!important;display:flex;align-items:center;gap:.65rem}
.brand-icon{width:38px;height:38px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;background:#edf3ff;color:var(--blue);font-size:1.2rem}
.nav-link{font-weight:600;color:#4e5b6d!important;font-size:.94rem;padding:.55rem .7rem!important}
.nav-link:hover,.nav-link.active{color:var(--blue)!important}
.btn-primary{background:var(--blue);border-color:var(--blue);border-radius:9px;font-weight:650;padding:.7rem 1.05rem}
.btn-primary:hover{background:var(--blue-dark);border-color:var(--blue-dark)}
.btn-outline-primary{border-radius:9px;font-weight:650;padding:.7rem 1.05rem}
.hero{padding:5.5rem 0 4.8rem;background:linear-gradient(180deg,#f7f9ff 0%,#fff 100%);overflow:hidden}
.eyebrow{display:inline-flex;align-items:center;gap:.45rem;background:#eaf1ff;color:#1e5bd6;padding:.38rem .75rem;border-radius:99px;font-size:.8rem;font-weight:750;letter-spacing:.035em}
.hero h1{font-weight:820;letter-spacing:-.055em;line-height:1.08;font-size:clamp(2.4rem,5vw,4.45rem);max-width:760px;margin:1.2rem 0}
.hero p{font-size:1.13rem;color:var(--muted);max-width:650px}
.search-box{display:flex;gap:.5rem;background:#fff;border:1px solid #dfe5ee;border-radius:13px;padding:.45rem;max-width:640px;box-shadow:0 10px 35px rgba(28,52,94,.06);margin-top:1.6rem}
.search-box input{border:0;box-shadow:none!important;padding:.75rem .9rem;min-width:0}
.hero-art{min-height:310px;border:1px solid #e6ebf5;border-radius:24px;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 20px 60px rgba(29,53,94,.07)}
.printer-illustration{width:min(82%,340px);text-align:center}
.printer-screen{width:110px;height:28px;border-radius:8px 8px 0 0;background:#dce7fb;margin:0 auto}
.printer-top{height:34px;background:#f0f3f9;border:2px solid #d5ddea;border-bottom:0;border-radius:12px 12px 0 0}
.printer-body{background:#e8edf5;border:2px solid #d5ddea;border-radius:12px;padding:20px 18px 15px}
.printer-slot{height:8px;border-radius:5px;background:#aebbd0;margin:0 auto 14px;width:75%}
.paper{background:#fff;border:1px solid #dce2ec;border-radius:4px;width:72%;height:75px;margin:0 auto 0;box-shadow:0 4px 10px #1723370d}
.paper:before,.paper:after{content:"";display:block;height:5px;background:#dce4f2;border-radius:5px;margin:13px 12px 0}
.paper:after{width:55%;margin-top:8px}
.art-chip{position:absolute;background:#fff;border:1px solid var(--line);box-shadow:0 8px 25px #1723370c;border-radius:12px;padding:.7rem .9rem;font-size:.86rem;font-weight:700}
.art-chip.one{left:-12px;top:28px}.art-chip.two{right:-12px;bottom:30px}
.section{padding:4.6rem 0}.section-soft{background:var(--soft)}
.section-heading{text-align:center;max-width:680px;margin:0 auto 2.3rem}
.section-heading h2,.page-hero h1{font-weight:800;letter-spacing:-.04em}
.section-heading p,.muted{color:var(--muted)}
.topic-card{height:100%;display:block;padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);transition:transform .18s,border-color .18s,box-shadow .18s}
.topic-card:hover{transform:translateY(-3px);border-color:#c7d7ff;box-shadow:0 12px 28px #1723370b;color:var(--ink)}
.topic-icon{width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:13px;background:#edf3ff;color:var(--blue);font-size:1.35rem;margin-bottom:1rem}
.topic-card h3{font-size:1.08rem;font-weight:750}
.topic-card p{color:var(--muted);font-size:.94rem;margin-bottom:0}
.page-hero{padding:4.1rem 0 3.2rem;background:#f7f9ff;border-bottom:1px solid #edf0f7}
.page-hero p{color:var(--muted);max-width:720px;font-size:1.05rem}
.content-wrap{max-width:850px}
.content-wrap h2{font-size:1.55rem;font-weight:780;letter-spacing:-.025em;margin:2rem 0 .7rem}
.content-wrap h3{font-size:1.15rem;font-weight:750;margin:1.5rem 0 .5rem}
.content-wrap p,.content-wrap li{color:#4e5b6d}
.guide-list{display:grid;gap:1rem}
.guide-item{border:1px solid var(--line);border-radius:14px;padding:1.35rem;background:#fff}
.guide-item h3{font-size:1.08rem;font-weight:760}
.step-number{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;background:#edf3ff;color:var(--blue);border-radius:9px;font-weight:800;margin-right:.45rem}
.notice{border-left:4px solid var(--blue);background:#f4f7ff;padding:1rem 1.15rem;border-radius:0 10px 10px 0;color:#44536a}
.accordion-item{border:1px solid var(--line)!important;border-radius:12px!important;overflow:hidden;margin-bottom:.75rem}
.accordion-button{font-weight:700;padding:1.1rem 1.2rem;box-shadow:none!important}
.accordion-button:not(.collapsed){background:#f4f7ff;color:var(--blue)}
.accordion-body{color:var(--muted)}
.form-control,.form-select{border-color:#dce2ec;border-radius:9px;padding:.8rem .9rem}
.form-control:focus,.form-select:focus{border-color:#8fb0ff;box-shadow:0 0 0 .2rem #246bfd17}
.site-footer{background:#111d31;color:#c8d1df;padding:3rem 0 1.4rem}
.site-footer a{color:#d7deea}.site-footer a:hover{color:#fff}
.footer-brand{font-size:1.15rem;font-weight:800;color:#fff}
.footer-heading{font-size:.9rem;font-weight:800;color:#fff;margin-bottom:1rem}
.footer-links{display:grid;gap:.55rem;font-size:.92rem}
.footer-bottom{border-top:1px solid #2a3548;margin-top:2.2rem;padding-top:1.2rem;color:#9ca9bc;font-size:.85rem}
.search-result{padding:1rem;border:1px solid var(--line);border-radius:12px;margin-top:.7rem}
.empty-state{display:none;color:var(--muted);padding:1rem 0}
.small-label{font-size:.8rem;color:var(--muted)}
@media(max-width:991px){.hero{padding:4rem 0}.hero-art{min-height:280px;margin-top:1rem}.art-chip.one{left:8px}.art-chip.two{right:8px}}
@media(max-width:575px){.hero{padding:3.4rem 0}.section{padding:3.3rem 0}.page-hero{padding:3rem 0 2.5rem}.search-box{flex-wrap:wrap}.search-box input{flex:1 1 100%}.search-box button{width:100%}.art-chip{font-size:.75rem}}
