#designComplexityToolApp h2,#designComplexityToolApp h3{font-weight:700!important;margin-bottom:1.5rem;font-size:1.5rem;line-height:1.2}#designComplexityToolApp{font-family:'Noto Sans JP',sans-serif;background-color:#f7f8fa;max-width:56rem!important;margin-left:auto!important;margin-right:auto!important;padding:2rem 1rem}@media (min-width:640px){#designComplexityToolApp{padding:2rem}}#designComplexityToolApp .form-section{margin-bottom:2.5rem}#designComplexityToolApp .form-section-title{font-size:1.5rem;font-weight:700;color:#333;border-bottom:2px solid #eee;padding-bottom:.5rem;margin-bottom:1.5rem}#designComplexityToolApp .input-group{margin-bottom:1rem}#designComplexityToolApp .input-group label{font-size:.875rem;font-weight:500;color:#555;margin-bottom:.5rem;display:block}#designComplexityToolApp .input-group input[type="text"],#designComplexityToolApp .input-group input[type="email"],#designComplexityToolApp .input-group input[type="number"],#designComplexityToolApp .input-group select,#designComplexityToolApp .input-group textarea{width:100%;padding:.625rem .9375rem;border:1px solid #ddd;border-radius:5px;box-shadow:inset 0 1px 2px rgba(0,0,0,.05);transition:border-color .2s ease-in-out , box-shadow .2s ease-in-out}#designComplexityToolApp .input-group input[type="file"]{font-size:.875rem;border:1px solid #ddd;border-radius:5px;padding:.5rem;width:100%}#designComplexityToolApp .input-group input:focus,#designComplexityToolApp .input-group select:focus,#designComplexityToolApp .input-group textarea:focus{outline:none;border-color:#6a3de4;box-shadow:0 0 0 3px rgba(106,61,228,.1)}#designComplexityToolApp .input-group select:disabled{background-color:#f3f4f6;cursor:not-allowed}#designComplexityToolApp .drop-zone{border:2px dashed #ccc;border-radius:.5rem;padding:1.5rem;text-align:center;transition:background-color .2s ease-in-out , border-color .2s ease-in-out;background-color:#fff}#designComplexityToolApp .drop-zone.dragover{background-color:#f0f5ff;border-color:#6a3de4}.previewArea{position:relative;padding:1rem;border-radius:.75rem;background-color:#f3f4f6;background-image:linear-gradient(45deg,#c7c9cc 25%,transparent 25%,transparent 75%,#c7c9cc 75%,#c7c9cc) , linear-gradient(45deg,#c7c9cc 25%,transparent 25%,transparent 75%,#c7c9cc 75%,#c7c9cc);background-size:20px 20px;background-position:0 0 , 10px 10px}#designComplexityToolApp .preview-img{max-width:100%;height:auto;border-radius:.5rem;border:1px solid #e5e7eb;background-color:transparent}#designComplexityToolApp .uploadButton{background-color:#4f46e5;color:#fff;font-weight:600;padding:.5rem 1.25rem;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s}#designComplexityToolApp .uploadButton:hover{background-color:#4338ca}#designComplexityToolApp .input-with-unit-container{display:flex;align-items:center;border:1px solid #ddd;border-radius:5px;box-shadow:inset 0 1px 2px rgba(0,0,0,.05);background-color:#fff}#designComplexityToolApp .input-with-unit-container:focus-within{border-color:#6a3de4;box-shadow:0 0 0 3px rgba(106,61,228,.1)}#designComplexityToolApp .input-with-unit-container input[type="number"]{width:100%;border:none;box-shadow:none;padding:.625rem .9375rem;text-align:right}#designComplexityToolApp .input-with-unit-container input[type="number"]:focus{outline:none;box-shadow:none}#designComplexityToolApp .input-with-unit-container .unit-label{padding:1.0rem 1rem;background-color:#f3f4f6;color:#4b5563;border-left:1px solid #ddd;border-radius:0 4px 4px 0;font-size:.875rem;font-weight:500}#designComplexityToolApp .quantity-input-container{width:40%;min-width:150px}#designComplexityToolApp .step2-size-inputs-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:640px){#designComplexityToolApp .step2-size-inputs-grid{grid-template-columns:repeat(2,1fr)}}#designComplexityToolApp .loader{border:4px solid #f3f3f3;border-top:4px solid #6a3de4;border-radius:50%;width:30px;height:30px;animation:spin 1s linear infinite;margin:1rem auto}@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }.custom-message-box{position:fixed;top:20px;left:50%;transform:translateX(-50%);background-color:#f8d7da;color:#721c24;padding:1rem 1.5rem;border:1px solid #f5c6cb;border-radius:.375rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.15);z-index:10001;opacity:0;transition:opacity .3s ease-in-out , transform .3s ease-in-out;max-width:90%}.custom-message-box.show{opacity:1;transform:translateX(-50%) translateY(0)}.custom-message-box.success{background-color:#d4edda;color:#155724;border-color:#c3e6cb}.custom-message-box.info{background-color:#d1ecf1;color:#0c5460;border-color:#bee5eb}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.6);display:flex;align-items:flex-start;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:opacity .3s ease;overflow-y:auto;padding:2rem 1rem}.modal-overlay.show{opacity:1;visibility:visible}.modal-content{background:#fff;padding:2rem;border-radius:.75rem;box-shadow:0 10px 25px rgba(0,0,0,.1);width:100%;max-width:440px;transform:scale(.95);transition:transform .3s ease;margin:1rem 0}.modal-overlay.show .modal-content{transform:scale(1)}.modal-title{font-size:1.25rem;font-weight:700;margin-bottom:2rem;text-align:center;color:#1f2937}.modal-input-group{margin-bottom:1.5rem;text-align:left}.modal-input-group label{display:block;margin-bottom:.5rem;font-weight:500;color:#374151;font-size:.875rem}.modal-input-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:1rem}.modal-input-group input:focus{outline:none;border-color:#6a3de4;box-shadow:0 0 0 3px rgba(106,61,228,.2)}.modal-buttons{margin-top:2rem;display:flex;flex-direction:column;gap:.75rem}.modal-buttons button{width:100%;padding:.875rem 1rem;border-radius:.375rem;font-size:1rem;font-weight:700;border:none;cursor:pointer;transition:background-color .2s}.modal-button-primary{background-color:#6366f1;color:#fff}.modal-button-primary:hover{background-color:#4f46e5}.modal-button-secondary{background-color:#e5e7eb;color:#374151}.modal-button-secondary:hover{background-color:#d1d5db}.error-message{color:#ef4444;font-size:.875rem;margin-top:.25rem;display:none}.ai-upload-area{border:2px dashed #d1d5db;border-radius:.5rem;padding:1rem;text-align:center;transition:background-color .2s ease-in-out , border-color .2s ease-in-out;background-color:#f9fafb}.ai-upload-area.dragover{background-color:#f0f5ff;border-color:#6a3de4}.file-info-text{margin-top:.75rem;font-weight:500;color:#1f2937;font-size:.875rem}#designComplexityToolApp .color-preview-box{width:50px;height:30px;border:1px solid #ccc;border-radius:4px;background-size:cover;background-position:center;flex-shrink:0}#designComplexityToolApp .colorDropdownContainer .input-group{display:flex;align-items:center;gap:.5rem}#designComplexityToolApp .colorDropdownContainer .input-group label{margin-bottom:0;flex-shrink:0}#designComplexityToolApp .colorDropdownContainer .input-group select{flex-grow:1}#designComplexityToolApp .radio-group-item{display:flex;align-items:flex-start;padding:1rem;border:1px solid #ddd;border-radius:5px;cursor:pointer;transition:background-color .2s ease-in-out , border-color .2s ease-in-out;background-color:#fff}#designComplexityToolApp .radio-group-item:has(input:checked) {background-color:#f0f5ff;border-color:#6a3de4}#designComplexityToolApp .radio-group-item input[type="radio"]{margin-top:.2rem;margin-right:.75rem;accent-color:#6a3de4;flex-shrink:0}#designComplexityToolApp .radio-group-item .plan-description,#designComplexityToolApp .radio-group-item .shipping-description{font-size:.875rem;color:#6b7280}#designComplexityToolApp .radio-group{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}#designComplexityToolApp .radio-group label{display:flex;align-items:center;cursor:pointer;margin-bottom:0;font-weight:400;color:#333}#designComplexityToolApp .radio-group input[type="radio"]{margin-right:.5rem}#designComplexityToolApp .quote-table-container{border:1px solid #e5e7eb;border-radius:.375rem;overflow:hidden;background-color:#fff;font-size:.875rem;line-height:1.5}#designComplexityToolApp .quote-table-header{display:none;background-color:#f9fafb;font-weight:500;color:#6b7280;text-align:left;border-bottom:1px solid #e5e7eb}#designComplexityToolApp .quote-table-row{border-bottom:1px solid #e5e7eb}#designComplexityToolApp .quote-table-row:last-child{border-bottom:none}#designComplexityToolApp .quote-table-row-design-header{background-color:#f9fafb;font-weight:600;color:#1f2937;padding:.75rem 1rem;font-size:1rem}#designComplexityToolApp .quote-cell{padding:.75rem 1rem;color:#111827}#designComplexityToolApp .cell-item{font-weight:600;font-size:1rem}#designComplexityToolApp .item-details{font-size:.875rem;font-weight:400;color:#4b5563;display:block;margin-top:.125rem}#designComplexityToolApp .discount-row .cell-item,#designComplexityToolApp .discount-row .cell-price{color:#dc2626;font-weight:600}#designComplexityToolApp .cell-unitprice,#designComplexityToolApp .cell-quantity{display:inline-block;padding:0;font-size:.875rem;color:#6b7280;margin-right:.75rem}#designComplexityToolApp .cell-unitprice:before{content:"単価: "}#designComplexityToolApp .cell-quantity:before{content:"数量: "}#designComplexityToolApp .cell-price{font-size:1.125rem;font-weight:600;text-align:right;padding-top:.25rem}@media (min-width:641px){#designComplexityToolApp .quote-table-header,#designComplexityToolApp .quote-table-row{display:grid;grid-template-columns:3fr 1fr 1fr 1.2fr;align-items:center}#designComplexityToolApp .quote-table-header{padding:0}#designComplexityToolApp .quote-table-header .quote-cell{padding:.5rem 1rem}#designComplexityToolApp .quote-table-row-design-header{grid-column: 1 / -1;padding:.75rem 1rem}#designComplexityToolApp .cell-item{font-weight:400;font-size:.875rem}#designComplexityToolApp .cell-unitprice,#designComplexityToolApp .cell-quantity,#designComplexityToolApp .cell-price{text-align:right;font-size:.875rem;font-weight:400;padding:.75rem 1rem}#designComplexityToolApp .cell-unitprice:before,#designComplexityToolApp .cell-quantity:before{content:""}#designComplexityToolApp .cell-price{font-size:.95rem;font-weight:600}#designComplexityToolApp .discount-row .cell-item{grid-column: 1 / 4;text-align:right;font-weight:600}#designComplexityToolApp .discount-row .cell-price{font-weight:600}}#designComplexityToolApp .price-summary-list{margin-top:1.5rem;border:1px solid #e5e7eb;border-radius:.375rem;overflow:hidden;background-color:#fff}#designComplexityToolApp .price-summary-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #e5e7eb}#designComplexityToolApp .price-summary-row:last-child{border-bottom:none}#designComplexityToolApp .price-summary-row dt{font-weight:500;color:#374151}#designComplexityToolApp .price-summary-row dd{font-weight:600;color:#1f2937;font-size:1.125rem;text-align:right;white-space:nowrap}#designComplexityToolApp .price-summary-row.total-row{background-color:#f9fafb;border-top:2px solid #6a3de4;padding:1rem 1.5rem}#designComplexityToolApp .price-summary-row.total-row dt{font-size:1.25rem;font-weight:700;color:#4f46e5}#designComplexityToolApp .price-summary-row.total-row dd{font-size:1.75rem;font-weight:700;color:#4f46e5}@keyframes pulse-shadow {
    0% { box-shadow: 0 0 0 0 rgba(220, 38, 38, 0.7); }
    70% { box-shadow: 0 0 0 15px rgba(220, 38, 38, 0); }
    100% { box-shadow: 0 0 0 0 rgba(220, 38, 38, 0); }
}#designComplexityToolApp #createQuoteButton.pulsing-button{animation:pulse-shadow 2s infinite}@keyframes blink-animation {
    50% { background-color: #4f46e5; } /* 少し濃い紫色 */
}#designComplexityToolApp .blinking-button{animation:blink-animation 1.5s ease-in-out infinite}#designComplexityToolApp .input-error{border-color:#ef4444!important;box-shadow:0 0 0 3px rgba(239,68,68,.2)!important}#designComplexityToolApp .wizard-navigation{display:flex;justify-content:space-between;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid #e5e7eb}#designComplexityToolApp .wizard-btn{font-weight:700;padding:.75rem 1.5rem;border-radius:.375rem;border:none;cursor:pointer;transition:background-color .2s;font-size:1rem}#designComplexityToolApp .wizard-btn.next{background-color:#6a3de4;color:#fff}#designComplexityToolApp .wizard-btn.next:hover:not(:disabled) {background-color:#5833b8}#designComplexityToolApp .wizard-btn.prev{background-color:#e5e7eb;color:#374151}#designComplexityToolApp .wizard-btn.prev:hover:not(:disabled) {background-color:#d1d5db}#designComplexityToolApp .wizard-btn:disabled{background-color:#ccc;cursor:not-allowed;color:#777}#designComplexityToolApp .wizard-btn.orange{background-color:#f97316;color:#fff}#designComplexityToolApp .wizard-btn.orange:hover:not(:disabled) {background-color:#ea580c}#designComplexityToolApp #addDesignYes{background-color:#22c55e;color:#fff}#designComplexityToolApp #addDesignYes:hover{background-color:#16a34a}#designComplexityToolApp #createQuoteButton{background-color:#dc2626;color:#fff;font-weight:700;padding:.875rem 2rem;border-radius:.5rem;border:none;cursor:pointer;transition:background-color .2s;font-size:1.125rem}#designComplexityToolApp #createQuoteButton:hover{background-color:#b91c1c}#designComplexityToolApp #actionButtonContainer{margin-top:2rem;text-align:center;display:flex;flex-direction:column;gap:1rem}@media (min-width:640px){#designComplexityToolApp #actionButtonContainer{flex-direction:row;justify-content:center}}#designComplexityToolApp #actionButtonContainer button{width:100%;font-weight:700;padding:.875rem 2rem;border-radius:.5rem;border:none;cursor:pointer;transition:background-color .2s;font-size:1rem}@media (min-width:640px){#designComplexityToolApp #actionButtonContainer button{width:auto}}#designComplexityToolApp #actionButtonContainer #downloadPdfButton{background-color:#4f46e5;color:#fff}#designComplexityToolApp #actionButtonContainer #downloadPdfButton:hover{background-color:#4338ca}#designComplexityToolApp #actionButtonContainer #requestProductionButton{background-color:#16a34a;color:#fff}#designComplexityToolApp #actionButtonContainer #requestProductionButton:hover{background-color:#15803d}#designComplexityToolApp .design-name-header{font-size:1.125rem;font-weight:700;color:#4f46e5;padding-bottom:.5rem;border-bottom:2px solid #e5e7eb;margin-bottom:1.5rem}#designComplexityToolApp #text-image-generator-app{line-height:1.5}#designComplexityToolApp #text-image-generator-app #textCanvas-generator{display:none}#designComplexityToolApp #text-image-generator-app input[type="file"]{font-size:.875rem}#designComplexityToolApp .text-gen-size-inputs-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width:768px){#designComplexityToolApp .text-gen-size-inputs-grid{grid-template-columns:repeat(3,1fr)}}#designComplexityToolApp #realtime-preview-area{position:relative;width:100%;padding:1rem;border:1px solid #ddd;border-radius:.5rem;background-color:#f9fafb;min-height:220px;display:flex;align-items:center;justify-content:center}#designComplexityToolApp #realtime-preview-img{max-width:100%;max-height:200px;transition:opacity .2s;opacity:0}#designComplexityToolApp #realtime-loader{position:absolute;inset:0;background-color:rgba(255,255,255,.75);display:flex;align-items:center;justify-content:center}#designComplexityToolApp #realtime-loader p{margin-left:.5rem;color:#4b5563}#designComplexityToolApp,#designComplexityToolApp *{box-sizing:border-box}#designComplexityToolApp input,#designComplexityToolApp select,#designComplexityToolApp textarea{margin:0!important;font-size:14px;line-height:1.5;font-family:inherit;border-radius:.375rem;border:1px solid #d1d5db;padding:.45rem .6rem;background-color:#fff;max-width:100%}#designComplexityToolApp input[type="number"]{-moz-appearance:textfield}#designComplexityToolApp input[type="number"]::-webkit-outer-spin-button,#designComplexityToolApp input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}#designComplexityToolApp .input-group>label,#designComplexityToolApp label{margin:0 0 .25rem 0;font-weight:500;display:block}#designComplexityToolApp button{margin:0!important;border-radius:9999px;border:none;padding:.5rem 1.2rem;font-size:14px;font-weight:600;cursor:pointer}#designComplexityToolApp #nextBtn,#designComplexityToolApp #prevBtn,#designComplexityToolApp #downloadPdfButton,#designComplexityToolApp #requestProductionButton{background-color:#111827;color:#fff}#designComplexityToolApp button{margin:0!important;border:none;border-radius:10px;font-weight:600;font-size:15px;padding:.6rem 1.6rem;cursor:pointer}#designComplexityToolApp #prevBtn{background-color:#9ca3af;color:#fff}#designComplexityToolApp #prevBtn:hover{background-color:#6b7280}#designComplexityToolApp #nextBtn{background-color:#e11d48;color:#fff;animation:nextBtnBlink 1.2s infinite ease-in-out}@keyframes nextBtnBlink {
    0% {
        box-shadow: 0 0 0px rgba(225, 29, 72, 0.5);
        transform: scale(1);
    }
    50% {
        box-shadow: 0 0 20px rgba(225, 29, 72, 0.8);
        transform: scale(1.04); /* ほんの少し大きく */
    }
    100% {
        box-shadow: 0 0 0px rgba(225, 29, 72, 0.5);
        transform: scale(1);
    }
}#designComplexityToolApp .radio-group-item{align-items:center}#designComplexityToolApp .radio-group-item input[type="radio"]{margin-top:0}#designComplexityToolApp .add-design-buttons{display:flex!important;justify-content:center!important;align-items:center!important;gap:1rem!important;flex-wrap:nowrap!important;margin-top:1.5rem}#designComplexityToolApp .add-design-buttons button{padding:.75rem 1.5rem;font-size:1rem;border-radius:.5rem}@media (min-width:601px){#designComplexityToolApp .add-design-buttons{flex-direction:row!important}}@media (max-width:600px){#designComplexityToolApp .add-design-buttons{flex-direction:column!important}#designComplexityToolApp .add-design-buttons button{width:100%;max-width:320px}}#designComplexityToolApp #nextBtn.final-step,#designComplexityToolApp .wizard-btn.final-step{background-color:#ff6a00!important;border-color:#ff6a00!important;color:#fff!important}#designComplexityToolApp #nextBtn.final-step:hover,#designComplexityToolApp .wizard-btn.final-step:hover{background-color:#e45d00!important;border-color:#e45d00!important}#designComplexityToolApp .wizard-navigation{position:sticky;bottom:0;z-index:999;background:#fff;padding:1rem;border-top:1px solid #e5e7eb;display:flex;justify-content:space-between;gap:1rem}#designComplexityToolApp .wizard-navigation .next{background-color:#e53935!important;color:#fff;animation:pulseNext 1.2s infinite}@keyframes pulseNext {
    0%   { opacity: 1;   }
    50%  { opacity: 0.55; }
    100% { opacity: 1;   }
}#designComplexityToolApp .wizard-navigation .prev{background-color:#9ca3af!important;color:#fff}#designComplexityToolApp{position:sticky;top:70px;z-index:20;background:#f5f5f5}