.harada-page{--core: #f4d35e;--hub: #f0f0ee;--line-thin: #ececec;--line-thick: #1c1c1c;--line: #ececec;--bg: #fbfbfa;--ink: #1c1c1c;--muted: #8a8a85;--accent: #1c1c1c;background:var(--bg);color:var(--ink);font-family:Poppins,Helvetica Neue,Helvetica,Arial,sans-serif;line-height:1.65;padding:56px 24px 72px}.harada-page *{box-sizing:border-box}.harada-page .tool-header{max-width:920px;margin:0 auto 28px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}.harada-page .tool-header h1{font-size:22px;margin:0;font-weight:600;letter-spacing:-.02em;text-transform:none;line-height:1.2;color:var(--ink)}.harada-page .tool-header p{margin:6px 0 0;font-size:13px;color:var(--muted);max-width:540px;line-height:1.5}.harada-page .toolbar{display:flex;gap:8px;flex-wrap:wrap}.harada-page button{font:inherit;font-size:13px;font-weight:500;padding:9px 16px;border:1px solid #e4e4e1;background:#fff;color:var(--ink);border-radius:999px;cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s}.harada-page button:hover{background:#f4f4f2}.harada-page button.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.harada-page button.primary:hover{background:#000}.harada-page button:disabled{opacity:.55;cursor:not-allowed}.harada-page .tool-foot{max-width:920px;margin:28px auto 0;display:flex;align-items:center;gap:16px}.harada-page #chart-wrap{max-width:920px;margin:0 auto;overflow-x:auto;background:#fff;border:1px solid #eee;border-radius:18px;padding:18px;box-shadow:0 1px 2px #0000000a,0 12px 40px #0000000d}.harada-page #chart{display:grid;grid-template-columns:repeat(9,1fr);grid-template-rows:repeat(9,1fr);gap:0;background:#fff;border:2px solid var(--line-thick);border-radius:6px;overflow:hidden;aspect-ratio:1 / 1;min-width:720px}.harada-page .cell{border:1px solid var(--line-thin);padding:4px;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background .15s}.harada-page .cell .ed{width:100%;max-height:100%;border:0;background:transparent;font:inherit;font-size:12px;line-height:1.25;text-align:center;color:inherit;padding:2px;overflow:hidden;word-break:break-word;cursor:text}.harada-page .cell .ed:focus{outline:1.5px solid var(--ink);outline-offset:-2px;border-radius:2px}.harada-page .cell .ed:empty:before{content:attr(data-ph);color:#c2c2bd;font-weight:400}.harada-page .cell.core{background:var(--core)}.harada-page .cell.core .ed{font-weight:600}.harada-page .cell.hub{background:var(--hub)}.harada-page .cell.hub .ed{font-weight:600}.harada-page .cell.mirror .ed{color:#4a4a46}.harada-page .cell.bt{border-top:2px solid var(--line-thick)}.harada-page .cell.bl{border-left:2px solid var(--line-thick)}.harada-page .hint{max-width:920px;margin:0 auto 18px;font-size:12.5px;color:var(--muted);line-height:1.6}.harada-page .hint b{color:#4a4a46;font-weight:600}.harada-page .modal-backdrop{position:fixed;inset:0;background:#14141452;backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:50}.harada-page .modal-backdrop.open{display:flex}.harada-page .modal{background:#fff;border-radius:18px;padding:26px;width:min(420px,92vw);box-shadow:0 24px 70px #00000040}.harada-page .modal h2{margin:0 0 4px;font-size:17px;font-weight:600;letter-spacing:-.01em;text-transform:none;line-height:1.2}.harada-page .modal p{margin:0 0 20px;font-size:13px;color:var(--muted);line-height:1.5}.harada-page .opt-grid{display:flex;gap:12px}.harada-page .opt{flex:1;border:1px solid #ebebe8;border-radius:14px;padding:20px 12px;cursor:pointer;text-align:center;transition:border-color .15s,background .15s,transform .1s}.harada-page .opt:hover{border-color:var(--ink);background:#fafafa}.harada-page .opt:active{transform:scale(.985)}.harada-page .opt .ico{font-size:30px;line-height:1}.harada-page .opt .name{font-weight:600;font-size:14px;margin-top:10px}.harada-page .opt .dim{font-size:11px;color:var(--muted);margin-top:3px}.harada-page .modal-foot{margin-top:18px;text-align:right}.harada-page .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.harada-page button.danger{background:#d9534f;border-color:#d9534f;color:#fff}.harada-page button.danger:hover{background:#c9302c;border-color:#c9302c}.harada-page #gate-form{display:flex;flex-direction:column;gap:10px}.harada-page #gate-email{font:inherit;font-size:15px;padding:12px 14px;border:1px solid #e4e4e1;border-radius:12px;outline:none;transition:border-color .15s,box-shadow .15s}.harada-page #gate-email:focus{border-color:var(--ink);box-shadow:0 0 0 3px #1c1c1c12}.harada-page #gate-email.invalid{border-color:#d9534f;box-shadow:0 0 0 3px #d9534f1a}.harada-page .gate-error{font-size:12.5px;color:#d9534f;margin:0}.harada-page .gate-submit{width:100%;padding:12px;font-size:15px}.harada-page .section-divider{max-width:720px;margin:64px auto 0;border:0;border-top:1px solid var(--line)}.harada-page .harada-article{max-width:720px;margin:0 auto;padding:40px 24px 24px;line-height:1.65}.harada-page .harada-article .eyebrow{font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}.harada-page .harada-article h1{font-size:38px;line-height:1.12;letter-spacing:-.025em;font-weight:600;margin:0 0 16px;text-transform:none;color:var(--ink)}.harada-page .harada-article .lede{font-size:19px;line-height:1.55;color:#44443f;margin:0 0 8px;max-width:none}.harada-page .harada-article .byline{font-size:13px;color:var(--muted);margin:20px 0 0}.harada-page .harada-article hr{border:0;border-top:1px solid var(--line);margin:36px 0}.harada-page .harada-article h2{font-size:23px;letter-spacing:-.015em;font-weight:600;margin:44px 0 14px;text-transform:none;line-height:1.2;color:var(--ink)}.harada-page .harada-article h3{font-size:16px;font-weight:600;margin:28px 0 6px;text-transform:none;line-height:1.3}.harada-page .harada-article p{font-size:16.5px;color:#2c2c2a;margin:0 0 18px;max-width:none}.harada-page .harada-article a.inline{color:var(--ink);text-underline-offset:2px}.harada-page .harada-article ul,.harada-page .harada-article ol{padding-left:22px;margin:0 0 18px}.harada-page .harada-article li{font-size:16.5px;color:#2c2c2a;margin:0 0 8px}.harada-page .harada-article strong{font-weight:600}.harada-page .harada-article em{font-style:italic}.harada-page .harada-article blockquote{margin:26px 0;padding:4px 0 4px 20px;border-left:3px solid var(--core);color:#44443f;font-size:18px;font-style:italic}.harada-page .harada-article .callout{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px;margin:28px 0;box-shadow:0 1px 2px #00000008}.harada-page .harada-article .callout p:last-child{margin-bottom:0}.harada-page .harada-article .diagram{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:320px;margin:28px auto}.harada-page .harada-article .diagram div{aspect-ratio:1 / 1;border-radius:8px;background:var(--hub);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#5a5a55;text-align:center;padding:4px}.harada-page .harada-article .diagram div.c{background:var(--core);color:#3a3411}.harada-page .harada-article .cap{text-align:center;font-size:12.5px;color:var(--muted);margin:-10px 0 28px}.harada-page .harada-article .end-cta{text-align:center;margin:56px 0 0;padding:36px 24px;background:#fff;border:1px solid var(--line);border-radius:18px}.harada-page .harada-article .end-cta h2{margin:0 0 8px}.harada-page .harada-article .end-cta p{color:var(--muted);margin:0 0 22px}.harada-page .harada-article .end-cta a{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;padding:12px 26px;border-radius:999px;font-weight:500;font-size:15px;transition:background .15s}.harada-page .harada-article .end-cta a:hover{background:#000;color:#fff}.harada-page a{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;color:var(--ink)}.harada-page a:hover{background:transparent;color:var(--ink)}.harada-page button,.harada-page .end-cta a{text-decoration:none}@media(max-width:600px){.harada-page .harada-article h1{font-size:30px}.harada-page .harada-article .lede{font-size:17px}}@media print{.harada-page .tool-header,.harada-page .hint,.harada-page .tool-foot,.harada-page .section-divider,.harada-page .harada-article{display:none}.harada-page #chart-wrap{border:0;box-shadow:none;padding:0}.harada-page{padding:0;background:#fff}}
