*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Hiragino Sans,Noto Sans JP,sans-serif;line-height:1.6;color:#333;background-color:#f5f5f5;-webkit-font-smoothing:antialiased}button,input,select{font-family:inherit;font-size:inherit}button{cursor:pointer;border:none;background:none}:root{--color-primary: #1565c0;--color-primary-dark: #0d47a1;--color-primary-light: #e3f2fd;--color-profit-plus: #1565c0;--color-profit-minus: #c62828;--color-profit-zero: #333;--color-bg: #f5f5f5;--color-surface: #ffffff;--color-border: #e0e0e0;--color-text: #333333;--color-text-secondary: #666666;--color-error: #d32f2f;--color-success: #2e7d32;--color-warning: #f57f17;--color-gap-warn-bg: #fff8e1;--color-gap-ok-bg: #e8f5e9;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--radius: 8px;--radius-sm: 4px;--shadow-card: 0 2px 8px rgba(0, 0, 0, .1);--shadow-btn: 0 2px 4px rgba(0, 0, 0, .15);--font-size-sm: .85rem;--font-size-base: 1rem;--font-size-lg: 1.15rem;--font-size-xl: 1.35rem;--font-size-title: 1.4rem}#app{max-width:600px;margin:0 auto;padding:var(--space-md);min-height:100vh}.app-header{text-align:center;padding:var(--space-lg) 0 var(--space-md)}.app-title{font-size:var(--font-size-title);color:var(--color-primary-dark);line-height:1.4}.main-content{margin-top:var(--space-md)}.app-footer{margin-top:var(--space-xl);padding:var(--space-lg) 0 var(--space-md);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary);border-top:1px solid var(--color-border)}.footer-note{margin-top:var(--space-xs);font-size:.75rem}#form-container{margin-bottom:var(--space-md)}#result-container{margin-bottom:var(--space-lg)}#help-container{margin-top:var(--space-lg)}.tabs{display:flex;border-bottom:2px solid var(--color-border);margin-bottom:var(--space-md)}.tab{flex:1;padding:var(--space-sm) var(--space-md);font-size:var(--font-size-base);font-weight:600;color:var(--color-text-secondary);background:none;border:none;border-bottom:3px solid transparent;transition:color .2s,border-color .2s;text-align:center}.tab:hover{color:var(--color-primary)}.tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.calc-form{background:var(--color-surface);border-radius:var(--radius);padding:var(--space-lg);box-shadow:var(--shadow-card)}.field-group{margin-bottom:var(--space-md)}.field-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text-secondary);margin-bottom:var(--space-xs)}.input-field,.calc-form select{width:100%;padding:10px 12px;font-size:var(--font-size-base);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text);transition:border-color .2s}.input-field:focus,.calc-form select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.custom-rate-input{margin-top:var(--space-sm)}.unit-label{display:inline-block;margin-top:var(--space-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.button-group{display:flex;gap:var(--space-sm);margin-top:var(--space-lg)}.btn{padding:12px 20px;font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-sm);transition:background-color .2s,box-shadow .2s,opacity .2s}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{flex:1;background:var(--color-primary);color:#fff;box-shadow:var(--shadow-btn)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark)}.btn-secondary{background:var(--color-border);color:var(--color-text)}.btn-secondary:hover:not(:disabled){background:#ccc}.btn-add{width:100%;padding:10px;font-size:var(--font-size-sm);color:var(--color-primary);border:1.5px dashed var(--color-primary);border-radius:var(--radius-sm);background:var(--color-primary-light);margin-top:var(--space-md)}.btn-add:hover:not(:disabled){background:#bbdefb}.btn-remove{width:32px;height:32px;font-size:var(--font-size-base);color:var(--color-error);border:1.5px solid var(--color-error);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.btn-remove:hover:not(:disabled){background:#ffebee}.btn-remove:disabled{opacity:.3;cursor:not-allowed}.members-section{margin-top:var(--space-md)}.section-title{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--space-md);color:var(--color-text)}.member-row{background:var(--color-bg);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-sm);border:1px solid var(--color-border)}.member-row-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-sm)}.member-number{font-weight:600;font-size:var(--font-size-sm);color:var(--color-primary)}.member-fields{display:grid;gap:var(--space-sm)}.member-field-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:500}.member-fields .input-field{width:100%}.error-messages{margin-top:var(--space-sm)}.error-text{color:var(--color-error);font-size:var(--font-size-sm);margin-bottom:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#ffebee;border-radius:var(--radius-sm)}.help-section{background:var(--color-surface);border-radius:var(--radius);padding:var(--space-lg);box-shadow:var(--shadow-card)}.help-title{font-size:var(--font-size-lg);margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm)}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:var(--color-primary);color:#fff;font-size:.8rem;font-weight:700}.accordion{border:1px solid var(--color-border);border-radius:var(--radius-sm);margin-bottom:var(--space-sm);overflow:hidden}.accordion-header{width:100%;padding:var(--space-sm) var(--space-md);text-align:left;font-size:var(--font-size-sm);font-weight:600;color:var(--color-text);background:var(--color-bg);border:none;cursor:pointer;transition:background .2s;position:relative;padding-right:36px}.accordion-header:after{content:"▼";position:absolute;right:var(--space-md);font-size:.7rem;transition:transform .2s}.accordion.is-open .accordion-header:after{transform:rotate(180deg)}.accordion-header:hover{background:#eee}.accordion-body{padding:var(--space-md);font-size:var(--font-size-sm);line-height:1.8;color:var(--color-text-secondary)}.ad-banner{text-align:center;padding:var(--space-md) 0;margin-top:var(--space-md)}.ad-banner img{max-width:100%;height:auto}.result-section{margin-top:var(--space-md)}.result-block{background:var(--color-surface);border-radius:var(--radius);padding:var(--space-md) var(--space-lg);box-shadow:var(--shadow-card);margin-bottom:var(--space-md)}.result-heading{font-size:var(--font-size-lg);font-weight:700;color:var(--color-text);margin-bottom:var(--space-sm);padding-bottom:var(--space-sm);border-bottom:2px solid var(--color-primary-light)}.result-body p{margin-bottom:var(--space-xs);font-size:var(--font-size-base);line-height:1.8}.profit-plus{color:var(--color-profit-plus);font-weight:700}.profit-minus{color:var(--color-profit-minus);font-weight:700}.profit-zero{color:var(--color-profit-zero)}.gap-warn{color:var(--color-warning);background:var(--color-gap-warn-bg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-top:var(--space-sm)}.gap-ok{color:var(--color-success);background:var(--color-gap-ok-bg);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);margin-top:var(--space-sm)}.result-transfer{border:2px solid var(--color-primary);background:var(--color-primary-light)}.transfer-line{padding:var(--space-sm) 0;border-bottom:1px dashed var(--color-border)}.transfer-line:last-of-type{border-bottom:none}.surplus-note{margin-top:var(--space-md);padding:var(--space-sm) var(--space-md);background:var(--color-gap-warn-bg);border-radius:var(--radius-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.8}.result-note{text-align:center;font-size:var(--font-size-sm);color:var(--color-text-secondary);padding:var(--space-sm)}.exact-balls{color:var(--color-primary);font-weight:600;background:var(--color-primary-light);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);margin-top:var(--space-xs)}
