*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{color:#333;-webkit-font-smoothing:antialiased;background:#f3eee1;margin:0;font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic,Meiryo,system-ui,sans-serif;font-size:16px;line-height:1.6}input,select,button{font-family:inherit}.app{max-width:640px;margin:0 auto;padding:16px 14px 48px}.app-header{text-align:center;padding:12px 0 4px}.app-header h1{letter-spacing:.2em;color:#3a2f1b;margin:0;font-size:1.6rem}.subtitle{color:#8a7a55;margin:6px 0 0;font-size:.85rem}.mode-tabs{gap:8px;margin-top:16px;display:flex}.mode-tabs button{color:#6b5a33;cursor:pointer;background:#fffdf7;border:1px solid #d8cfb8;border-radius:10px;flex:1;padding:12px 0;font-size:1rem;font-weight:600}.mode-tabs button.active{color:#fff;background:#8a6a2f;border-color:#8a6a2f}.aisho-head{margin-bottom:8px}.num-badge.big{padding:6px 16px;font-size:1.1rem}.note-list{color:#444;margin:6px 0;padding-left:1.3em;font-size:.88rem;line-height:1.8}.input-form{flex-direction:column;gap:14px;margin-top:16px;display:flex}fieldset{background:#fffdf7;border:1px solid #d8cfb8;border-radius:10px;padding:12px}legend{color:#6b5a33;padding:0 6px;font-size:.9rem;font-weight:600}.cal-toggle{gap:8px;margin-bottom:10px;display:flex}.cal-toggle label{text-align:center;color:#6b5a33;cursor:pointer;background:#fff;border:1px solid #d8cfb8;border-radius:8px;flex:1;padding:8px 0;font-size:.95rem}.cal-toggle label.active{color:#fff;background:#c9a437;border-color:#c9a437;font-weight:600}.cal-toggle input{display:none}.date-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.date-row label{color:#555;align-items:center;gap:4px;display:flex}.date-row input{text-align:center;background:#fff;border:1px solid #ccc;border-radius:8px;width:4.5em;padding:10px 8px;font-size:1rem}.date-row select{background:#fff;border:1px solid #ccc;border-radius:8px;padding:10px 6px;font-size:1rem}.name-row{gap:8px;display:flex}.name-row input{background:#fff;border:1px solid #ccc;border-radius:8px;flex:1;min-width:0;padding:10px;font-size:1rem}.hint{color:#9a8a64;margin:8px 0 0;font-size:.75rem;line-height:1.6}.submit-btn{letter-spacing:.3em;color:#fff;cursor:pointer;background:linear-gradient(135deg,#b8932e,#8a6a2f);border:none;border-radius:10px;padding:14px;font-size:1.1rem;font-weight:600}.submit-btn:active{opacity:.85}.error{color:#c0392b;margin:4px 0 0;font-size:.9rem}.results{flex-direction:column;gap:18px;margin-top:24px;display:flex}.result-section{background:#fffdf7;border:1px solid #e4dcc6;border-radius:12px;padding:14px}.result-section h2{color:#3a2f1b;border-bottom:2px solid #c9a437;margin:0 0 10px;padding-bottom:8px;font-size:1.05rem}.result-section h3{color:#6b5a33;margin:0 0 6px;font-size:.95rem}.result-section p{color:#444;margin:4px 0;font-size:.9rem;line-height:1.7}.wareki-line{color:#3a2f1b;font-weight:600}.role-cards{flex-direction:column;gap:10px;display:flex}.role-card{background:#fff;border:1px solid #e4dcc6;border-radius:10px;padding:10px 12px}.role-head{color:#8a7a55;justify-content:space-between;align-items:center;gap:8px;font-size:.8rem;display:flex}.num-badge{color:#fff;white-space:nowrap;background:#c9a437;border-radius:99px;padding:2px 10px;font-size:.85rem;font-weight:700}.role-name{color:#3a2f1b;margin:4px 0;font-size:1.2rem;font-weight:700}.role-family{color:#fff;vertical-align:middle;background:#8a6a2f;border-radius:6px;margin-left:8px;padding:2px 8px;font-size:.75rem;font-weight:500}.kana-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip{color:#3a2f1b;background:#fff;border:1px solid #d8cfb8;border-radius:8px;flex-direction:column;align-items:center;padding:4px 10px;font-size:.95rem;display:inline-flex}.chip b{color:#8a6a2f;font-size:.85rem}.chip.special{background:#faf3dd;border-color:#c9a437}.num-table{border-collapse:collapse;width:100%;font-size:.9rem}.num-table th{text-align:left;color:#8a7a55;white-space:nowrap;vertical-align:top;width:7.5em;padding:6px 8px 6px 0;font-weight:600}.num-table td{color:#333;border-bottom:1px dashed #eee6d2;padding:6px 0}.num-table tr:last-child td{border-bottom:none}.profile-head{align-items:center;gap:12px;margin-bottom:8px;display:flex}.num-circle{border:1px solid #00000026;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.4rem;font-weight:700;display:flex}.profile-type{color:#3a2f1b;font-weight:700}.profile-group{color:#8a7a55;font-size:.78rem}.inner-detail{border-top:1px dashed #d8cfb8;margin-top:12px;padding-top:10px}.board{grid-template-columns:repeat(3,1fr);gap:8px;max-width:360px;margin:0 auto;display:grid}.cell{flex-direction:column;align-items:center;gap:4px;display:flex}.chome-label{color:#9a8a64;font-size:.7rem}.card{aspect-ratio:1;border:1px solid #0000002e;border-radius:10px;justify-content:center;align-items:center;width:100%;display:flex;box-shadow:0 1px 3px #0000001f}.card-num{font-size:2rem;font-weight:700;transition:transform .3s;display:block}.changed{color:#6b5a33;font-size:.72rem}.board-readings{flex-direction:column;gap:10px;margin-top:16px;display:flex}.reading-item{background:#fff;border:1px solid #e4dcc6;border-radius:10px;padding:10px 12px}.disclaimer{text-align:center;color:#a99a76;padding:8px 0 0;font-size:.72rem}@media (width>=480px){.role-cards{flex-direction:row}.role-card{flex:1}}
