body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Hiragino Kaku Gothic ProN,メイリオ,meiryo,sans-serif;background-color:#f5f5f5;color:#333;line-height:1.6}#app{min-height:100vh}.app-container{max-width:100%;margin:0 auto;background-color:#fff;min-height:100vh}.fade-enter-active,.fade-leave-active{transition:opacity .3s ease}.fade-enter-from,.fade-leave-to{opacity:0}.btn{display:inline-block;padding:12px 24px;border:none;border-radius:8px;font-size:16px;font-weight:700;text-align:center;cursor:pointer;transition:all .3s ease;text-decoration:none}.btn-primary{background-color:#00b900;color:#fff}.btn-primary:hover:not(:disabled){background-color:#090}.btn-secondary{background-color:#f0f0f0;color:#333}.btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:#fff;border-radius:12px;padding:20px;margin:15px;box-shadow:0 2px 8px #0000001a}.error-message{background-color:#fee;color:#c00;padding:12px;border-radius:8px;margin:15px;text-align:center}.loading{display:flex;justify-content:center;align-items:center;min-height:100vh}.spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #00B900;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Hiragino Kaku Gothic ProN,Hiragino Sans,メイリオ,meiryo,sans-serif;font-size:16px;line-height:1.6;color:#333;background-color:#f5f5f5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,select,textarea{font-family:inherit;font-size:16px;padding:12px;border:1px solid #ddd;border-radius:8px;width:100%;transition:border-color .3s}input:focus,select:focus,textarea:focus{outline:none;border-color:#00b900}label{display:block;margin-bottom:8px;font-weight:700;color:#555}.page-container{padding:20px;max-width:600px;margin:0 auto}.page-header{padding:20px;background:linear-gradient(135deg,#00b900,#090);color:#fff;text-align:center;margin-bottom:20px}.page-header h1{font-size:24px;margin-bottom:5px}.page-header p{font-size:14px;opacity:.9}.section{margin-bottom:24px}.section-title{font-size:18px;font-weight:700;margin-bottom:12px;color:#333}.form-group{margin-bottom:20px}.button-group{display:flex;gap:10px;margin-top:20px}.button-group .btn{flex:1}.badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:14px;font-weight:700}.badge-success{background-color:#e8f5e9;color:#2e7d32}.badge-warning{background-color:#fff3e0;color:#e65100}.badge-info{background-color:#e3f2fd;color:#1565c0}.list-item{padding:15px;border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background-color .2s}.list-item:hover{background-color:#f8f8f8}.list-item:last-child{border-bottom:none}.empty-state{text-align:center;padding:40px 20px;color:#999}.empty-state-icon{font-size:48px;margin-bottom:16px}.empty-state-text{font-size:16px}.text-center{text-align:center}.text-muted{color:#999}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}
