:root{color:#1f2937;background-color:#f3f4f6;font-family:Segoe UI,Hiragino Sans,Yu Gothic UI,Meiryo,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}#root{min-height:100vh}.app{min-height:100vh;display:flex;flex-direction:column}.sakutio-header-fallback{width:100%;max-width:1040px;margin:0 auto;padding:.55rem 1.25rem;min-height:3.75rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem}.sakutio-header-fallback a{color:#4258a1;text-decoration:none;margin-right:1rem}.sakutio-header-fallback nav{display:inline-flex;flex-wrap:wrap;gap:.35rem 1rem}.app-header{background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;padding:2rem 1.5rem}.app-header__content{max-width:1100px;margin:0 auto}.app-title{margin:0 0 .5rem;font-size:2rem;font-weight:700}.app-description{margin:0;opacity:.95}.app-privacy-notice{margin:.75rem 0 0;padding:.5rem .75rem;font-size:.9rem;line-height:1.5;background-color:#ffffff1f;border:1px solid rgba(255,255,255,.25);border-radius:.375rem}.app-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:1.5rem}.app-footer{padding:1rem 1.5rem 2rem;text-align:center;color:#6b7280;font-size:.9rem}.conversion-timing{margin:1rem auto 0;max-width:40rem;text-align:left;border:1px dashed #c4b5fd;border-radius:.5rem;padding:.5rem .75rem;background-color:#faf5ff}.conversion-timing__summary{cursor:pointer;font-weight:600;color:#5b21b6;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.conversion-timing__badge{font-size:.8rem;font-weight:500;color:#7c3aed}.conversion-timing__live,.conversion-timing__empty,.conversion-timing__hint,.conversion-timing__dominant{margin:.75rem 0 0;font-size:.85rem;color:#6b7280}.conversion-timing__dominant{color:#5b21b6;font-weight:600}.conversion-timing__body{margin-top:.75rem}.conversion-timing__selector{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.75rem}.conversion-timing__selector-label{font-size:.85rem;font-weight:600;color:#4b5563}.conversion-timing__selector-control{width:100%;padding:.5rem .625rem;border:1px solid #d8b4fe;border-radius:.5rem;background-color:#fff;font-size:.9rem}.conversion-timing__stats{margin:0;display:grid;gap:.35rem}.conversion-timing__row{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem}.conversion-timing__row dt{margin:0;color:#6b7280}.conversion-timing__row dd{margin:0;text-align:right;font-variant-numeric:tabular-nums;color:#374151}.conversion-timing__warnings{margin-top:.75rem;padding:.625rem .75rem;border-radius:.5rem;background-color:#fff7ed;border:1px solid #fdba74}.conversion-timing__warnings-title{margin:0 0 .5rem;font-size:.85rem;font-weight:600;color:#9a3412}.conversion-timing__warnings ul{margin:0;padding-left:1.25rem;font-size:.8rem;color:#7c2d12}.conversion-timing__actions{display:flex;align-items:center;gap:.75rem;margin-top:.75rem}.conversion-timing__copy-message{font-size:.85rem;color:#166534}.conversion-timing__warn-badge{font-size:.75rem;color:#9a3412;font-weight:600}.encoding-slow-warning p{margin:0}.encoding-slow-warning p+p,.encoding-slow-warning ul+p{margin-top:.5rem}.encoding-slow-warning__list{margin:.25rem 0 0;padding-left:1.5rem}.resource-diagnostics{margin:1rem auto 0;max-width:32rem;text-align:left;border:1px dashed #d1d5db;border-radius:.5rem;padding:.5rem .75rem;background-color:#f9fafb}.resource-diagnostics__summary{cursor:pointer;font-weight:600;color:#4b5563}.resource-diagnostics__list{margin:.75rem 0 0;display:grid;gap:.35rem}.resource-diagnostics__row{display:flex;justify-content:space-between;gap:1rem;font-size:.85rem}.resource-diagnostics__row dt{margin:0;color:#6b7280}.resource-diagnostics__row dd{margin:0;font-variant-numeric:tabular-nums;color:#374151}.resource-diagnostics__hint{margin:.75rem 0 0;font-size:.8rem;color:#9ca3af}.section-title{margin:0 0 1rem;font-size:1.25rem}.message{padding:.875rem 1rem;border-radius:.75rem;font-size:.95rem}.message p{margin:0}.message p+p{margin-top:.25rem}.message--info{background-color:#dbeafe;color:#1e40af;border:1px solid #93c5fd}.message--error{background-color:#fee2e2;color:#991b1b;border:1px solid #fca5a5}.message--warning{background-color:#fef3c7;color:#92400e;border:1px solid #fcd34d}.drop-zone{border:2px dashed #93c5fd;background-color:#fff;border-radius:1rem;padding:2.5rem 1.5rem;text-align:center;transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.drop-zone:hover{border-color:#2563eb;background-color:#eff6ff}.drop-zone--dragging{border-color:#2563eb;background-color:#dbeafe;transform:scale(1.01)}.drop-zone--disabled{opacity:.6;cursor:not-allowed}.drop-zone__input{display:none}.drop-zone__icon{font-size:2.5rem;margin-bottom:.75rem}.drop-zone__title{margin:0 0 .25rem;font-size:1.125rem;font-weight:600}.drop-zone__subtitle,.drop-zone__hint{margin:.25rem 0 0;color:#6b7280;font-size:.95rem}.drop-zone__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:1.25rem}.settings-panel,.image-list,.action-bar{background-color:#fff;border-radius:1rem;padding:1.25rem;box-shadow:0 1px 3px #0f172a14}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.field{display:flex;flex-direction:column;gap:.375rem}.field__label{font-weight:600;font-size:.95rem}.field__control{width:100%;padding:.625rem .75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1rem;background-color:#fff}.field__control:focus{outline:2px solid #93c5fd;outline-offset:1px;border-color:#2563eb}.field__control:disabled{background-color:#f9fafb;color:#9ca3af}.field__hint{margin:0;color:#6b7280;font-size:.85rem}.field--checkbox{justify-content:flex-end}.field__checkbox-label{display:flex;align-items:flex-start;gap:.5rem;font-weight:600;font-size:.95rem;cursor:pointer}.field__checkbox{margin-top:.2rem;flex-shrink:0}.action-bar{display:flex;flex-direction:column;gap:.75rem}.action-bar__main{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.action-bar-status{flex:1;min-width:0;min-height:2.75rem;display:flex;flex-direction:column;justify-content:center}.action-bar-status--idle,.action-bar-status--completed{flex-direction:row;flex-wrap:wrap;align-items:center;gap:1rem;color:#4b5563;font-weight:600;font-size:.95rem}.action-bar-status--converting{gap:.375rem;max-width:280px}.action-bar-status__progress-text{margin:0;font-weight:700;color:#1d4ed8;font-size:.95rem}.action-bar-status__percentage{margin-left:.5rem;color:#374151}.action-bar-status__bar{width:100%;height:.5rem;background-color:#e5e7eb;border-radius:999px;overflow:hidden}.action-bar-status__bar-fill{height:100%;background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:999px;transition:width .2s ease}.action-bar-status__result--success{color:#166534}.action-bar-status__result--skip{color:#92400e}.action-bar-status__result--error{color:#991b1b}.action-bar-status--stopped{flex-direction:column;align-items:flex-start;gap:.25rem;color:#4b5563;font-weight:600;font-size:.95rem}.action-bar-status__stopped-label{color:#b45309;font-weight:700}.action-bar__controls{flex-shrink:0;display:flex;flex-direction:column;align-items:flex-end;gap:.5rem}.action-bar__buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.75rem}.action-bar__hint{margin:0;color:#6b7280;font-size:.8rem;text-align:right}.action-bar__history{border-top:1px solid #e5e7eb;padding-top:.625rem}.action-bar__history-summary{cursor:pointer;font-size:.875rem;font-weight:600;color:#4b5563;list-style:none;-webkit-user-select:none;user-select:none}.action-bar__history-summary::-webkit-details-marker{display:none}.action-bar__history-body{margin-top:.5rem;padding:.625rem .75rem;background-color:#f9fafb;border-radius:.5rem;font-size:.875rem;color:#374151}.action-bar__history-body p{margin:0 0 .25rem}.action-bar__history-body p:last-child{margin-bottom:0}.button{border:none;border-radius:.5rem;padding:.7rem 1rem;font-size:.95rem;font-weight:600;cursor:pointer;transition:background-color .2s ease,opacity .2s ease}.button:disabled{opacity:.55;cursor:not-allowed}.button--primary{background-color:#2563eb;color:#fff}.button--primary:hover:not(:disabled){background-color:#1d4ed8}.button--danger{background-color:#dc2626;color:#fff}.button--danger:hover:not(:disabled){background-color:#b91c1c}.button--secondary{background-color:#e5e7eb;color:#111827}.button--secondary:hover:not(:disabled){background-color:#d1d5db}.button--zip-ready{background-color:#059669;color:#fff}.button--zip-ready:hover:not(:disabled){background-color:#047857}.button--ghost{background-color:transparent;color:#374151;border:1px solid #d1d5db}.button--ghost:hover:not(:disabled){background-color:#f9fafb}.button--small{padding:.45rem .75rem;font-size:.85rem}.image-list--empty{text-align:center;color:#6b7280}.table-wrapper{overflow-x:auto}.image-table{width:100%;border-collapse:collapse;min-width:900px}.image-table th,.image-table td{padding:.875rem;border-bottom:1px solid #e5e7eb;vertical-align:top;text-align:left}.image-table th{background-color:#f9fafb;font-size:.9rem}.image-table__preview{width:72px;height:72px;object-fit:cover;border-radius:.5rem;border:1px solid #e5e7eb;background-color:#f9fafb}.image-table__info p{margin:0 0 .25rem;font-size:.9rem}.image-table__pending{margin:0;color:#6b7280;font-size:.9rem}.image-table__error{margin:0;color:#b91c1c;font-size:.9rem}.image-table__row--error{background-color:#fef2f2}.image-table__actions{display:flex;flex-direction:column;gap:.5rem}.status-badge{display:inline-block;padding:.25rem .625rem;border-radius:999px;font-size:.8rem;font-weight:700}.status-badge--pending{background-color:#f3f4f6;color:#4b5563}.status-badge--converting{background-color:#dbeafe;color:#1d4ed8}.status-badge--done{background-color:#dcfce7;color:#166534}.status-badge--error{background-color:#fee2e2;color:#991b1b}@media(max-width:768px){.app-title{font-size:1.5rem}.app-main{padding:1rem}.action-bar__main{flex-direction:column;align-items:stretch}.action-bar__controls{align-items:stretch}.action-bar__buttons{flex-direction:column}.action-bar__hint{text-align:left}.action-bar-status--converting{max-width:none}.button{width:100%}}.guide-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.25rem;padding:.85rem 1rem;border:1px solid #dbeafe;border-radius:.75rem;background-color:#f8fafc}.guide-cta__title{margin:0;font-size:.95rem;font-weight:600;color:#1e3a8a}.guide-cta__description{margin:.2rem 0 0;font-size:.875rem;color:#4b5563}.guide-cta__link{display:inline-flex;align-items:center;gap:.35rem;padding:.55rem .9rem;border-radius:.5rem;border:1px solid #93c5fd;background-color:#fff;color:#1d4ed8;font-size:.9rem;font-weight:600;text-decoration:underline;text-underline-offset:.15em;min-height:2.5rem}.guide-cta__link:hover{background-color:#eff6ff;border-color:#60a5fa}.guide-cta__link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.guide-cta__arrow{text-decoration:none}.guide-page{gap:1.75rem}.guide-back-link-wrap{margin:1rem 0 0}.guide-back-link-wrap--footer{margin-top:1.25rem}.guide-back-link{display:inline-flex;align-items:center;min-height:2.5rem;padding:.45rem .85rem;border-radius:.5rem;border:1px solid rgba(255,255,255,.45);background-color:#ffffff24;color:#fff;font-weight:600;text-decoration:underline;text-underline-offset:.15em}.guide-back-link:hover{background-color:#ffffff38}.guide-back-link:focus-visible{outline:2px solid #ffffff;outline-offset:2px}.guide-section{padding:1.25rem 1.35rem;border-radius:.75rem;background-color:#fff;box-shadow:0 1px 3px #0f172a14}.guide-section>p{margin:0 0 .75rem;color:#374151}.guide-section>p:last-child{margin-bottom:0}.guide-section>ul{margin:.5rem 0 0;padding-left:1.35rem;color:#374151}.guide-section>ul>li+li{margin-top:.35rem}.guide-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.guide-card{padding:1rem;border:1px solid #e5e7eb;border-radius:.625rem;background-color:#f9fafb}.guide-card__title{margin:0 0 .65rem;font-size:1rem;color:#1e3a8a}.guide-card ul{margin:0;padding-left:1.25rem;color:#374151}.guide-card li+li{margin-top:.25rem}.guide-card__note{margin:.75rem 0 0;font-size:.85rem;color:#6b7280}.guide-steps{margin:0;padding-left:1.35rem;color:#374151}.guide-steps>li+li{margin-top:.85rem}.guide-steps p{margin:.35rem 0 0}.guide-dl{margin:0;display:grid;gap:.85rem}.guide-dl__item{padding:.85rem 1rem;border:1px solid #e5e7eb;border-radius:.625rem;background-color:#f9fafb}.guide-dl__item dt{margin:0 0 .35rem;font-weight:700;color:#1e3a8a}.guide-dl__item dd{margin:0;color:#374151}.guide-callout{margin-top:.75rem;padding:.9rem 1rem;border-radius:.625rem}.guide-callout ul{margin:0;padding-left:1.25rem}.guide-callout li+li{margin-top:.35rem}.guide-callout p{margin:0}.guide-callout--info{background-color:#eff6ff;border:1px solid #bfdbfe;color:#1e3a8a}.guide-callout--warn{background-color:#fff7ed;border:1px solid #fdba74;color:#9a3412}.guide-faq{display:grid;gap:.85rem}.guide-faq__item{padding:1rem 1.05rem;border:1px solid #e5e7eb;border-radius:.625rem;background-color:#f9fafb}.guide-faq__question{margin:0 0 .5rem;font-size:1rem;color:#1e3a8a}.guide-faq__answer p{margin:0;color:#374151}.guide-faq__answer p+p{margin-top:.5rem}.guide-contact-link{display:inline-flex;align-items:center;min-height:2.5rem;padding:.5rem .9rem;border-radius:.5rem;border:1px solid #93c5fd;background-color:#eff6ff;color:#1d4ed8;font-weight:600;text-decoration:underline;text-underline-offset:.15em}.guide-contact-link:hover{background-color:#dbeafe}.guide-contact-link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.guide-page .guide-back-link{color:#1d4ed8;border-color:#93c5fd;background-color:#fff}.guide-page .guide-back-link:hover{background-color:#eff6ff}.guide-page .guide-back-link:focus-visible{outline:2px solid #2563eb;outline-offset:2px}@media(max-width:640px){.guide-cta{flex-direction:column;align-items:stretch}.guide-cta__link{justify-content:center;width:100%}.guide-section{padding:1rem}.guide-back-link,.guide-contact-link{width:100%;justify-content:center}}
