:root{--ink:#142018;--paper:#f4f2e9;--panel:#fbfaf5;--acid:#cfff47;--blue:#aee9ff;--pink:#ffd1dc;--muted:#647068;--line:rgba(20,32,24,.15);--shadow:0 18px 60px rgba(20,32,24,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Yu Gothic",sans-serif;line-height:1.7}a{color:inherit}button,input,textarea,select{font:inherit}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:18px clamp(20px,5vw,72px);border-bottom:1px solid var(--line);background:rgba(244,242,233,.92);backdrop-filter:blur(14px)}.logo{display:inline-flex;gap:8px;align-items:center;text-decoration:none;letter-spacing:.08em}.logo b{font-size:1rem}.logo span{padding:2px 7px;border:1px solid;border-radius:999px;font-size:.64rem;font-weight:800}nav{display:flex;gap:24px}nav a{color:var(--muted);font-size:.88rem;text-decoration:none}nav a:hover,nav a[aria-current="page"]{color:var(--ink)}main{min-height:72vh}.hero{padding:90px clamp(22px,7vw,105px)}.lab-hero{min-height:78vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:40px;background:radial-gradient(circle at 78% 30%,rgba(207,255,71,.65),transparent 26%)}.eyebrow{margin:0 0 16px;font-size:.7rem;font-weight:900;letter-spacing:.18em}.hero h1,.page-hero h1{max-width:960px;margin:0;font-size:clamp(3.2rem,8vw,7.7rem);line-height:.95;letter-spacing:-.06em}.hero h1 em{font-style:normal;color:#4b6f25}.lead{max-width:680px;margin:28px 0;color:var(--muted);font-size:clamp(1rem,2vw,1.2rem)}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--ink);border-radius:999px;padding:13px 22px;background:transparent;color:var(--ink);font-weight:800;cursor:pointer;text-decoration:none;transition:.2s}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--ink);color:white}.button:disabled{opacity:.45;cursor:not-allowed;transform:none}.hero-orbit{position:relative;min-height:420px}.orbit-center,.orbit{position:absolute;display:grid;place-items:center;border:1px solid var(--ink);box-shadow:var(--shadow);font-weight:900}.orbit-center{inset:29% 28%;border-radius:50%;background:var(--ink);color:var(--acid);font-size:6rem}.orbit{width:100px;height:100px;border-radius:24px;background:var(--panel)}.orbit-one{top:2%;right:12%;transform:rotate(8deg);background:var(--acid)}.orbit-two{bottom:4%;left:5%;transform:rotate(-9deg);background:var(--pink)}.orbit-three{right:0;bottom:10%;transform:rotate(5deg);background:var(--blue);font-size:.9rem}.tool-section,.promise,.page-content{padding:90px clamp(22px,7vw,105px)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px}.section-heading h2,.promise h2{margin:0;font-size:clamp(2.5rem,6vw,5rem);line-height:1.02;letter-spacing:-.045em}.section-heading>p{max-width:360px;color:var(--muted)}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:46px}.tool-card{position:relative;min-height:330px;display:flex;flex-direction:column;justify-content:space-between;padding:26px;border:1px solid var(--line);border-radius:24px;background:var(--panel);text-decoration:none;transition:.25s}.tool-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.tool-card.featured{background:var(--acid)}.tool-icon{width:66px;height:66px;display:grid;place-items:center;border:1px solid;border-radius:18px;font-size:.78rem;font-weight:900}.tool-card h3{margin:12px 0 8px;font-size:1.45rem;line-height:1.35}.tool-card p{margin:0;color:var(--muted)}.tool-card.featured p{color:#40503f}.tag{display:inline-block;padding:3px 9px;border-radius:999px;background:var(--ink);color:white;font-size:.7rem;font-weight:800}.arrow{position:absolute;right:25px;top:25px;font-size:1.6rem}.promise{background:var(--ink);color:white}.promise h2{max-width:780px}.promise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:55px}.promise-grid article{padding-top:20px;border-top:1px solid rgba(255,255,255,.25)}.promise-grid span{color:var(--acid);font-size:.75rem}.promise-grid h3{margin:32px 0 8px}.promise-grid p{margin:0;color:#b9c0bb}.page-hero{padding:70px clamp(22px,7vw,105px) 46px}.page-hero h1{font-size:clamp(2.8rem,7vw,6rem)}.page-hero .lead{max-width:760px}.tool-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:24px;padding:0 clamp(22px,7vw,105px) 100px}.tool-panel,.result-panel,.content-card{padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--panel)}.tool-panel h2,.result-panel h2{margin:0 0 20px;font-size:1.35rem}.field{display:grid;gap:8px;margin-bottom:20px}.field label,.field-label{font-size:.82rem;font-weight:800}.field textarea,.field input,.field select{width:100%;border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:white;color:var(--ink)}.field textarea{min-height:145px;resize:vertical}.field-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.color-row{display:flex;align-items:center;gap:14px}.color-row input[type="color"]{width:60px;height:44px;padding:4px}.result-box{min-height:290px;display:grid;place-items:center;padding:22px;border:1px dashed var(--line);border-radius:18px;background:white;text-align:center}.result-box canvas,.result-box img{display:block;max-width:100%;height:auto}.result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.privacy-note{display:flex;gap:10px;margin-top:22px;padding:14px;border-radius:13px;background:#edf6e7;color:#456041;font-size:.82rem}.drop-zone{display:grid;place-items:center;min-height:180px;padding:24px;border:2px dashed var(--line);border-radius:18px;text-align:center;cursor:pointer}.drop-zone.dragover{border-color:#527923;background:#f1f9dd}.drop-zone input{position:absolute;width:1px;height:1px;opacity:0}.drop-zone strong{display:block;font-size:1.1rem}.drop-zone span{color:var(--muted);font-size:.85rem}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:18px}.stat{padding:15px;border:1px solid var(--line);border-radius:14px;background:white}.stat b{display:block;font-size:1.5rem}.stat span{color:var(--muted);font-size:.75rem}.text-editor{min-height:330px!important}.content-section{max-width:960px;margin:0 auto;padding:0 22px 90px}.content-section h2{margin-top:52px;font-size:2rem}.content-section h3{margin-top:28px}.content-section p,.content-section li{color:#4f5c53}.article-list{display:grid;gap:15px;margin-top:36px}.article{padding:25px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}.article time{color:var(--muted);font-size:.82rem}.article h2{margin:7px 0;font-size:1.35rem}.status{min-height:1.7em;margin:12px 0 0;color:#456b22;font-weight:800}.hidden{display:none!important}footer{display:grid;grid-template-columns:1fr auto;gap:26px;padding:45px clamp(22px,5vw,72px);border-top:1px solid var(--line);color:var(--muted);font-size:.82rem}.footer-logo{color:var(--ink)}footer p{margin:10px 0 0}.footer-links{display:flex;flex-wrap:wrap;gap:18px}.footer-links a{text-decoration:none}footer>p{grid-column:1/-1}.notice{padding:15px;border-radius:13px;background:#fff4c8;color:#5b5126;font-size:.85rem}
@media(max-width:850px){.lab-hero,.tool-layout{grid-template-columns:1fr}.hero-orbit{min-height:310px}.tool-grid,.promise-grid{grid-template-columns:1fr}.tool-card{min-height:250px}.section-heading{align-items:start;flex-direction:column}.stats{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.site-header{align-items:flex-start;gap:16px}.site-header nav{flex-direction:column;gap:3px}.hero{padding-top:65px}.hero h1{font-size:clamp(3rem,15vw,5rem)}.hero-orbit{min-height:250px}.orbit{width:72px;height:72px}.orbit-center{font-size:4rem}.field-row{grid-template-columns:1fr}.tool-panel,.result-panel{padding:20px}footer{grid-template-columns:1fr}.footer-links{flex-direction:column;gap:7px}.document-workspace,.document-form{min-width:0}.line-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.line-editor .field:first-child{grid-column:1/-1}.line-editor .remove-line{grid-column:1/-1;width:100%}}
.tool-card.document-card{background:var(--blue)}.document-workspace{display:grid;grid-template-columns:minmax(380px,.85fr) minmax(560px,1.15fr);gap:22px;padding:0 clamp(18px,4vw,64px) 100px}.document-form{padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}.document-form section+section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.document-form h2{margin:0 0 16px;font-size:1.12rem}.type-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.type-switch label{cursor:pointer}.type-switch input{position:absolute;opacity:0}.type-switch span{display:block;padding:10px 5px;border:1px solid var(--line);border-radius:12px;text-align:center;font-size:.85rem;font-weight:800}.type-switch input:checked+span{border-color:var(--ink);background:var(--ink);color:#fff}.line-editor{display:grid;grid-template-columns:minmax(130px,1fr) 70px 105px 78px 38px;gap:7px;align-items:end;margin-bottom:9px}.line-editor .field{margin:0}.line-editor input,.line-editor select{padding:9px 8px}.remove-line{width:38px;height:42px;border:1px solid var(--line);border-radius:10px;background:white;cursor:pointer}.document-stage{position:sticky;top:92px;align-self:start}.document-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.document-toolbar p{margin:0;color:var(--muted);font-size:.8rem}.document-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.document-status{margin:0 0 10px;text-align:right}.paper{width:100%;min-height:800px;padding:54px 48px;background:white;box-shadow:var(--shadow);color:#1c2520;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}.paper-header{display:flex;justify-content:space-between;gap:30px}.paper-title{margin:0;font-size:2rem;letter-spacing:.25em}.paper-meta{display:grid;grid-template-columns:auto auto;gap:3px 12px;font-size:.78rem}.paper-meta dt{color:#69736d}.paper-meta dd{margin:0;text-align:right}.paper-parties{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:36px}.paper-customer{font-size:1.25rem;font-weight:800;border-bottom:1px solid;padding-bottom:8px}.paper-issuer{text-align:right;font-size:.78rem;white-space:pre-line}.paper-total{display:inline-block;margin:38px 0 24px;padding:5px 0;border-bottom:3px double;font-size:1.4rem;font-weight:900}.paper table{width:100%;border-collapse:collapse;font-size:.78rem}.paper th,.paper td{padding:9px 7px;border-bottom:1px solid #dfe3e0;text-align:right}.paper th:first-child,.paper td:first-child{text-align:left}.paper th{background:#f2f5f1}.paper-summary{width:48%;margin:18px 0 0 auto}.paper-summary div{display:flex;justify-content:space-between;padding:4px 0;font-size:.8rem}.paper-summary .grand{margin-top:5px;padding-top:8px;border-top:2px solid;font-size:1rem;font-weight:900}.paper-notes{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:40px;font-size:.74rem}.paper-notes h3{margin:0 0 7px;font-size:.78rem}.paper-notes p{margin:0;white-space:pre-line}.tax-breakdown{margin-top:8px;color:#59635d;font-size:.68rem}.legal-source{margin-top:14px;color:var(--muted);font-size:.76rem}
@media(max-width:1050px){.document-workspace{grid-template-columns:1fr}.document-stage{position:static;overflow:auto}.paper{min-width:700px}}
@media(max-width:620px){.document-workspace,.document-form{min-width:0}.line-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.line-editor .field:first-child{grid-column:1/-1}.line-editor .remove-line{grid-column:1/-1;width:100%}}
@media print{body{background:white}.site-header,.page-hero,.document-form,.document-toolbar,.document-status,footer{display:none!important}.document-workspace{display:block;padding:0}.document-stage{position:static}.paper{width:210mm;min-height:297mm;margin:0;padding:17mm 15mm;box-shadow:none}@page{size:A4;margin:0}}
.tool-card.stamp-card{background:var(--pink)}.stamp-result{background-image:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.stamp-result canvas{width:min(100%,360px);height:auto}.paper-issuer{position:relative;min-height:90px}.paper-stamp{position:absolute;right:8px;bottom:-12px;width:82px;height:82px;object-fit:contain;opacity:.82}
.variant-help{margin:-12px 0 16px;color:var(--muted);font-size:.82rem}.stamp-variants{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.stamp-variant{display:grid;gap:6px;justify-items:center;padding:12px;border:2px solid transparent;border-radius:16px;background-image:linear-gradient(45deg,#eee 25%,transparent 25%),linear-gradient(-45deg,#eee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#eee 75%),linear-gradient(-45deg,transparent 75%,#eee 75%);background-color:#fff;background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0;cursor:pointer}.stamp-variant:hover{border-color:#94b9c8}.stamp-variant.selected{border-color:#1976a5;box-shadow:0 0 0 3px rgba(25,118,165,.14)}.stamp-variant canvas{width:100%;max-width:150px;height:auto}.stamp-variant span{padding:2px 8px;border-radius:999px;background:rgba(255,255,255,.9);font-size:.72rem;font-weight:800}.stamp-panel{min-width:0}
.document-storage{margin:-8px -8px 0!important;padding:18px!important;border:1px solid rgba(20,32,24,.12);border-radius:16px;background:#edf6e7}.storage-actions{display:flex;flex-wrap:wrap;gap:8px}.storage-actions .button{padding:9px 14px;font-size:.78rem}.backup-actions{margin-top:10px;padding-top:10px;border-top:1px solid rgba(20,32,24,.12)}.backup-label{cursor:pointer}.storage-note{margin:12px 0 0;color:#456041;font-size:.76rem}.filename-field{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.filename-field span{font-weight:800}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.trust-hero h1{max-width:850px}.trust-content{max-width:1040px}.trust-nav{position:sticky;top:76px;z-index:10;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 48px;padding:14px;border:1px solid var(--line);border-radius:18px;background:rgba(244,242,233,.94);backdrop-filter:blur(12px)}.trust-nav a{padding:8px 12px;border-radius:999px;background:white;text-decoration:none;font-size:.8rem;font-weight:800}.trust-section{scroll-margin-top:150px;padding:42px 0;border-top:1px solid var(--line)}.trust-section:first-of-type{border-top:0}.trust-section h2{margin:0 0 22px;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.3;letter-spacing:-.025em}.trust-definition{margin:0;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--panel)}.trust-definition div{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:16px 20px}.trust-definition div+div{border-top:1px solid var(--line)}.trust-definition dt{font-weight:800}.trust-definition dd{margin:0;color:var(--muted)}.storage-table{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--panel)}.storage-row{display:grid;grid-template-columns:minmax(160px,.8fr) minmax(260px,1.5fr) minmax(220px,1.2fr)}.storage-row>*{padding:16px 18px}.storage-row>*+*{border-left:1px solid var(--line)}.storage-row+.storage-row{border-top:1px solid var(--line)}.storage-row span{color:var(--muted)}.storage-head{background:var(--ink);color:white;font-size:.8rem;font-weight:800}.storage-head span{color:white}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--line);border-radius:16px;background:var(--panel)}.faq-list summary{padding:18px 48px 18px 20px;cursor:pointer;font-weight:800;line-height:1.6}.faq-list details p{margin:0;padding:0 20px 20px;color:var(--muted);line-height:1.85}.update-list{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.update-list li{display:grid;grid-template-columns:150px 1fr;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.update-list time{color:var(--muted);font-size:.82rem}.update-list strong{font-size:1.05rem}.update-list p{margin:7px 0 0;color:var(--muted)}.disclaimer-panel{margin-top:24px;padding:30px!important;border:1px solid #d8c78e!important;border-radius:20px;background:#fff8dc}.disclaimer-panel p{line-height:1.85}@media(max-width:720px){.trust-nav{position:static;margin-bottom:28px}.trust-nav a{flex:1 1 42%;text-align:center}.trust-section{scroll-margin-top:120px;padding:34px 0}.trust-definition div,.update-list li{grid-template-columns:1fr;gap:6px}.storage-table{border:0;background:transparent}.storage-head{display:none}.storage-row{display:block;margin-bottom:14px;border:1px solid var(--line)!important;border-radius:16px;background:var(--panel);overflow:hidden}.storage-row>*{display:block;padding:13px 16px}.storage-row>*+*{border-top:1px solid var(--line);border-left:0}.storage-row span:last-child{font-size:.88rem}.disclaimer-panel{padding:22px!important}}
.storage-row{color:var(--ink);background:var(--panel)}.storage-row strong{color:var(--ink)}.storage-row span{color:#4f5c53}.storage-row a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.storage-head{background:var(--paper);color:var(--ink)}.storage-head span{color:var(--ink)}
.site-terms-notice{padding:16px clamp(22px,5vw,72px);border-top:1px solid var(--line);background:#edf6e7;color:#456041;font-size:.8rem;text-align:center}.site-terms-notice a{font-weight:800;text-underline-offset:3px}.terms-summary{margin:0 0 28px;padding:22px 24px;border:1px solid #d8c78e;border-radius:18px;background:#fff8dc}.terms-summary strong{display:block;margin-bottom:6px;font-size:1.05rem}.terms-summary p{margin:0}.terms-content ul{padding-left:1.35rem}.terms-content li+li{margin-top:8px}.terms-updated{margin-top:36px!important;font-size:.85rem;font-weight:800}@media(max-width:720px){.site-terms-notice{text-align:left}.terms-summary{padding:18px}}
