:root{--amg-accent: #be185d;--amg-accent-dark: #9d174d;--amg-accent-soft: #fdf0f6;--amg-surface: #ffffff;--amg-surface-muted: #faf7f9;--amg-paper: #f5f0f3;--amg-border: #ebe2e8;--amg-border-strong: #d9cbd4;--amg-text-main: #1f1a22;--amg-text-muted: #635a67;--amg-ok: #047857;--amg-warn: #92400e;--amg-warn-soft: #fff7e8;--amg-err: #b91c1c;--amg-err-soft: #fdeeee;--amg-shadow: 0 14px 34px rgba(76, 20, 50, 0.08);--amg-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--primary: var(--amg-accent);--primary-dark: var(--amg-accent-dark);--border: var(--amg-border);--surface: var(--amg-surface);--shadow-soft: var(--amg-shadow);--surface-muted: var(--amg-surface-muted);--text-main: var(--amg-text-main);--text-muted: var(--amg-text-muted);}
.amg-board{position: relative;margin-bottom: 26px;background: var(--amg-surface);border: 1px solid var(--amg-border);border-radius: 16px;box-shadow: var(--amg-shadow);color: var(--amg-text-main);overflow: hidden;transition: border-color 0.15s ease, box-shadow 0.15s ease;}
.amg-board.is-drop{border-color: var(--amg-accent);box-shadow: 0 0 0 3px rgba(190, 24, 93, 0.18), var(--amg-shadow);}
.amg-board [hidden]{display: none !important;}
.amg-byline{display: flex;flex-wrap: wrap;align-items: center;gap: 6px 16px;padding: 11px 20px;font-size: 13.5px;color: var(--amg-text-muted);border-bottom: 1px solid var(--amg-border);background: var(--amg-surface-muted);}
.amg-byline-author{font-weight: 500;}
.amg-byline-author .author-link{color: var(--amg-accent);font-weight: 600;text-decoration: none;}
.amg-byline-author .author-link:hover{text-decoration: underline;}
.amg-byline-author .author-link:focus-visible{outline: 2px solid var(--amg-accent);outline-offset: 2px;border-radius: 3px;}
.amg-grid{display: grid;grid-template-columns: minmax(0, 4fr) 2fr;}
.amg-main{padding: 22px;min-width: 0;}
.amg-side{padding: 22px;border-left: 1px solid var(--amg-border);background: var(--amg-surface-muted);display: flex;flex-direction: column;gap: 16px;}
.amg-file-input{position: absolute;width: 1px;height: 1px;opacity: 0;pointer-events: none;}
.amg-drop{display: flex;flex-direction: column;align-items: center;gap: 6px;margin: 0;padding: 26px 18px;border: 2px dashed var(--amg-border-strong);border-radius: 14px;background: var(--amg-paper);text-align: center;cursor: pointer;transition: border-color 0.15s ease, background 0.15s ease;}
.amg-drop:hover,.amg-board.is-drop .amg-drop{border-color: var(--amg-accent);background: var(--amg-accent-soft);}
.amg-file-input:focus-visible + .amg-drop{outline: 3px solid rgba(190, 24, 93, 0.35);outline-offset: 2px;}
.amg-drop-art{display: flex;gap: 4px;margin-bottom: 4px;}
.amg-drop-art i{display: block;height: 12px;border-radius: 3px;background: var(--amg-accent);}
.amg-drop-art i:nth-child(1){width: 34px;opacity: 0.9;}
.amg-drop-art i:nth-child(2){width: 22px;opacity: 0.6;}
.amg-drop-art i:nth-child(3){width: 40px;opacity: 0.35;}
.amg-drop-title{font-size: 18px;font-weight: 700;}
.amg-drop-sub{font-size: 14px;color: var(--amg-text-muted);max-width: 420px;}
.amg-drop .amg-btn{margin-top: 8px;}
.amg-btn{display: inline-flex;align-items: center;justify-content: center;gap: 6px;padding: 9px 16px;border: 1px solid var(--amg-border-strong);border-radius: 9px;background: var(--amg-surface);color: var(--amg-text-main);font-size: 14.5px;font-weight: 600;line-height: 1.2;text-decoration: none;cursor: pointer;transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;}
.amg-btn:hover{border-color: var(--amg-accent);color: var(--amg-accent-dark);}
.amg-btn:focus-visible,.amg-link-btn:focus-visible,.amg-clip-acts button:focus-visible{outline: 3px solid rgba(190, 24, 93, 0.35);outline-offset: 2px;}
.amg-btn-main{background: var(--amg-accent);border-color: var(--amg-accent);color: #ffffff;}
.amg-btn-main:hover{background: var(--amg-accent-dark);border-color: var(--amg-accent-dark);color: #ffffff;}
.amg-btn:disabled{opacity: 0.5;cursor: not-allowed;}
.amg-btn-sm{padding: 5px 11px;font-size: 13px;}
.amg-sample-row{display: flex;flex-wrap: wrap;align-items: baseline;gap: 4px 10px;margin-top: 12px;font-size: 13.5px;color: var(--amg-text-muted);}
.amg-link-btn{padding: 0;border: 0;background: none;color: var(--amg-accent);font-weight: 600;font-size: 14px;text-decoration: underline;text-underline-offset: 3px;cursor: pointer;}
.amg-link-btn:hover{color: var(--amg-accent-dark);}
.amg-msg{margin: 14px 0 0;padding: 10px 14px;border-radius: 9px;font-size: 14px;background: var(--amg-warn-soft);color: var(--amg-warn);border: 1px solid #f3dfbb;}
.amg-msg.is-err{background: var(--amg-err-soft);color: var(--amg-err);border-color: #f5cccc;}
.amg-order{margin-top: 22px;}
.amg-order-head{display: flex;align-items: baseline;justify-content: space-between;gap: 10px;margin-bottom: 10px;}
.amg-h{margin: 0;font-size: 17px;font-weight: 700;}
.amg-order-total{font-family: var(--amg-mono);font-size: 14px;color: var(--amg-text-muted);}
.amg-strip{position: relative;height: 34px;border-radius: 8px;background: var(--amg-paper);border: 1px solid var(--amg-border);overflow: hidden;}
.amg-seg-bar{position: absolute;top: 4px;bottom: 4px;border-radius: 5px;background: var(--hue);color: #ffffff;font-size: 12px;font-weight: 700;line-height: 24px;text-align: center;overflow: hidden;opacity: 0.88;}
.amg-seg-bar.is-alt{top: 9px;bottom: 0;opacity: 0.72;}
.amg-list{list-style: none;margin: 14px 0 0;padding: 0;display: flex;flex-direction: column;gap: 8px;}
.amg-clip{display: flex;align-items: center;gap: 10px;padding: 10px 10px 10px 8px;border: 1px solid var(--amg-border);border-left: 5px solid var(--hue);border-radius: 10px;background: var(--amg-surface);transition: box-shadow 0.15s ease, opacity 0.15s ease;}
.amg-clip.is-dragging{opacity: 0.45;}
.amg-clip.is-over-top{box-shadow: inset 0 3px 0 var(--amg-accent);}
.amg-clip.is-over-bot{box-shadow: inset 0 -3px 0 var(--amg-accent);}
.amg-clip.is-error{border-left-color: var(--amg-err);background: var(--amg-err-soft);}
.amg-grip{flex: none;width: 16px;color: var(--amg-border-strong);cursor: grab;text-align: center;font-size: 14px;user-select: none;}
.amg-grip:active{cursor: grabbing;}
.amg-num{flex: none;width: 24px;height: 24px;border-radius: 50%;background: var(--hue);color: #ffffff;font-size: 12px;font-weight: 700;line-height: 24px;text-align: center;}
.amg-clip.is-error .amg-num,.amg-clip.is-busy .amg-num{background: var(--amg-border-strong);}
.amg-clip-main{flex: 1;min-width: 0;display: flex;flex-direction: column;gap: 2px;}
.amg-clip-name{font-weight: 600;font-size: 14.5px;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;}
.amg-clip-meta{font-size: 12.5px;color: var(--amg-text-muted);font-family: var(--amg-mono);}
.amg-clip.is-error .amg-clip-meta{color: var(--amg-err);font-family: inherit;}
.amg-gain{display: inline-block;margin-left: 4px;padding: 0 6px;border-radius: 5px;background: var(--amg-accent-soft);color: var(--amg-accent-dark);font-weight: 600;}
.amg-clip-acts{flex: none;display: flex;gap: 4px;}
.amg-clip-acts button{width: 30px;height: 30px;padding: 0;border: 1px solid var(--amg-border);border-radius: 7px;background: var(--amg-surface);color: var(--amg-text-muted);font-size: 12px;cursor: pointer;}
.amg-clip-acts button:hover:not(:disabled){border-color: var(--amg-accent);color: var(--amg-accent);}
.amg-clip-acts button:disabled{opacity: 0.35;cursor: default;}
.amg-clip-acts button.is-playing{background: var(--amg-accent);border-color: var(--amg-accent);color: #ffffff;}
.amg-hint{margin: 10px 0 0;font-size: 13px;color: var(--amg-text-muted);}
.amg-set{margin: 0;padding: 0;border: 0;min-width: 0;display: flex;flex-direction: column;gap: 9px;}
.amg-set legend{float: none;width: auto;margin: 0 0 8px;padding: 0;font-size: 12.5px;font-weight: 700;letter-spacing: 0.06em;text-transform: uppercase;color: var(--amg-text-muted);}
.amg-seg{display: grid;grid-template-columns: repeat(3, 1fr);border: 1px solid var(--amg-border-strong);border-radius: 9px;overflow: hidden;background: var(--amg-surface);}
.amg-seg label{position: relative;margin: 0;}
.amg-seg input{position: absolute;opacity: 0;inset: 0;margin: 0;cursor: pointer;}
.amg-seg span{display: block;padding: 8px 4px;font-size: 13px;font-weight: 600;text-align: center;color: var(--amg-text-muted);border-left: 1px solid var(--amg-border);}
.amg-seg label:first-child span{border-left: 0;}
.amg-seg input:checked + span{background: var(--amg-accent);color: #ffffff;}
.amg-seg input:focus-visible + span{outline: 3px solid rgba(190, 24, 93, 0.35);outline-offset: -3px;}
.amg-len{display: grid;grid-template-columns: 1fr auto;align-items: center;gap: 4px 10px;font-size: 13.5px;}
.amg-len label{grid-column: 1 / -1;margin: 0;font-weight: 600;}
.amg-len input{width: 100%;accent-color: var(--amg-accent);}
.amg-len output{font-family: var(--amg-mono);font-size: 13px;min-width: 48px;text-align: right;}
.amg-check{display: flex;align-items: center;gap: 8px;margin: 0;font-size: 13.5px;cursor: pointer;}
.amg-check input{accent-color: var(--amg-accent);width: 16px;height: 16px;}
.amg-select,.amg-input{width: 100%;padding: 7px 10px;border: 1px solid var(--amg-border-strong);border-radius: 8px;background: var(--amg-surface);color: var(--amg-text-main);font-size: 14px;}
.amg-select:focus,.amg-input:focus{outline: none;border-color: var(--amg-accent);box-shadow: 0 0 0 3px rgba(190, 24, 93, 0.15);}
.amg-set-out{display: grid;grid-template-columns: 1fr 1fr;gap: 9px;}
.amg-set-out legend{grid-column: 1 / -1;}
.amg-set-out label{display: flex;flex-direction: column;gap: 4px;margin: 0;font-size: 12.5px;font-weight: 600;color: var(--amg-text-muted);}
.amg-set-out .amg-name{grid-column: 1 / -1;}
.amg-name-row{display: flex;align-items: center;gap: 6px;font-family: var(--amg-mono);font-size: 13px;font-weight: 400;}
.amg-sum{display: grid;grid-template-columns: repeat(3, 1fr);gap: 0;margin: 0;border: 1px solid var(--amg-border);border-radius: 10px;background: var(--amg-surface);}
.amg-sum div{padding: 9px 8px;text-align: center;border-left: 1px solid var(--amg-border);}
.amg-sum div:first-child{border-left: 0;}
.amg-sum dt{font-size: 11.5px;font-weight: 600;color: var(--amg-text-muted);text-transform: uppercase;letter-spacing: 0.05em;}
.amg-sum dd{margin: 2px 0 0;font-family: var(--amg-mono);font-size: 14.5px;font-weight: 600;}
.amg-warn{margin: 0;padding: 9px 12px;border-radius: 8px;font-size: 13px;background: var(--amg-warn-soft);color: var(--amg-warn);border: 1px solid #f3dfbb;}
.amg-warn.is-err{background: var(--amg-err-soft);color: var(--amg-err);border-color: #f5cccc;}
.amg-merge{width: 100%;padding: 12px 16px;font-size: 15.5px;}
.amg-status{margin: -6px 0 0;font-size: 13px;color: var(--amg-text-muted);text-align: center;min-height: 1.4em;}
.amg-result{padding: 20px 22px 22px;border-top: 1px solid var(--amg-border);background: linear-gradient(180deg, var(--amg-accent-soft), var(--amg-surface) 70%);}
.amg-result-head{display: flex;flex-wrap: wrap;align-items: baseline;justify-content: space-between;gap: 6px 14px;margin-bottom: 12px;}
.amg-result-meta{font-family: var(--amg-mono);font-size: 13px;color: var(--amg-text-muted);}
.amg-stale{margin: 0 0 12px;padding: 8px 12px;border-radius: 8px;font-size: 13.5px;background: var(--amg-warn-soft);color: var(--amg-warn);}
.amg-player{display: block;width: 100%;margin-bottom: 12px;}
.amg-result-acts{display: flex;flex-wrap: wrap;gap: 8px;}
.amg-chap{margin-top: 18px;}
.amg-chap-head{display: flex;align-items: center;justify-content: space-between;margin-bottom: 6px;}
.amg-chap-head h3{margin: 0;font-size: 15px;font-weight: 700;}
.amg-chap-box{width: 100%;padding: 10px 12px;border: 1px solid var(--amg-border-strong);border-radius: 9px;background: var(--amg-surface);font-family: var(--amg-mono);font-size: 13.5px;line-height: 1.6;resize: vertical;color: var(--amg-text-main);}
.amg-guide{margin-bottom: 30px;color: var(--amg-text-main);}
.amg-guide > section{padding: 28px 0;border-top: 1px solid var(--amg-border);}
.amg-guide > section:first-child{border-top: 0;padding-top: 8px;}
.amg-guide h2{margin: 0 0 12px;font-size: 23px;font-weight: 700;line-height: 1.3;}
.amg-guide h3{margin: 20px 0 8px;font-size: 17px;font-weight: 700;}
.amg-guide p{line-height: 1.7;color: var(--amg-text-main);}
.amg-guide a{color: var(--amg-accent);font-weight: 600;}
.amg-joins{display: grid;grid-template-columns: repeat(3, 1fr);gap: 16px;margin-top: 16px;}
.amg-join{margin: 0;padding: 16px;border: 1px solid var(--amg-border);border-radius: 12px;background: var(--amg-surface);}
.amg-join h3{margin: 12px 0 6px;}
.amg-join p{font-size: 14.5px;margin: 0 0 8px;}
.amg-join-pic{position: relative;height: 38px;border-radius: 8px;background: var(--amg-paper);}
.amg-join-pic span{position: absolute;top: 9px;height: 20px;border-radius: 4px;}
.amg-join-pic span:first-child{left: 8%;background: #1d4ed8;}
.amg-join-pic span:last-child{background: var(--amg-accent);}
.amg-join-pic.is-butt span:first-child{width: 42%;}
.amg-join-pic.is-butt span:last-child{left: 50%;width: 42%;}
.amg-join-pic.is-gap span:first-child{width: 34%;}
.amg-join-pic.is-gap span:last-child{left: 58%;width: 34%;}
.amg-join-pic.is-xfade span:first-child{width: 50%;background: linear-gradient(90deg, #1d4ed8 70%, rgba(29, 78, 216, 0));}
.amg-join-pic.is-xfade span:last-child{left: 42%;width: 50%;background: linear-gradient(90deg, rgba(190, 24, 93, 0), var(--amg-accent) 30%);}
.amg-table-wrap{overflow-x: auto;margin: 14px 0;border: 1px solid var(--amg-border);border-radius: 12px;}
.amg-table{width: 100%;border-collapse: collapse;font-size: 14.5px;}
.amg-table th,.amg-table td{padding: 10px 14px;text-align: left;vertical-align: top;border-top: 1px solid var(--amg-border);}
.amg-table thead th{border-top: 0;background: var(--amg-surface-muted);font-size: 12.5px;text-transform: uppercase;letter-spacing: 0.05em;color: var(--amg-text-muted);}
.amg-table tbody th{font-weight: 600;}
.amg-table-num td:not(:first-child){font-family: var(--amg-mono);white-space: nowrap;}
.amg-levels{display: grid;grid-template-columns: repeat(3, 1fr);gap: 0;margin: 16px 0;border: 1px solid var(--amg-border);border-radius: 12px;overflow: hidden;}
.amg-level{padding: 16px;border-left: 1px solid var(--amg-border);}
.amg-level:first-child{border-left: 0;}
.amg-level h3{margin: 0 0 6px;font-size: 15.5px;}
.amg-level p{margin: 0;font-size: 14.5px;}
.amg-level .amg-level-gain{margin-bottom: 8px;font-family: var(--amg-mono);font-size: 13px;color: var(--amg-accent-dark);}
.amg-code{margin: 12px 0;padding: 14px 16px;border-radius: 10px;background: #1f1a22;color: #f3e8ef;font-family: var(--amg-mono);font-size: 13.5px;line-height: 1.6;overflow-x: auto;}
.amg-code code{color: inherit;background: none;padding: 0;font-size: inherit;}
.amg-limits{display: grid;grid-template-columns: 200px 1fr;gap: 0;margin: 14px 0 0;}
.amg-limits dt,.amg-limits dd{margin: 0;padding: 12px 0;border-top: 1px solid var(--amg-border);line-height: 1.65;}
.amg-limits dt{font-weight: 700;padding-right: 16px;}
.amg-limits dt:first-of-type,.amg-limits dt:first-of-type + dd{border-top: 0;}
@media (max-width: 991px){.amg-grid{grid-template-columns: 1fr;}.amg-side{border-left: 0;border-top: 1px solid var(--amg-border);}.amg-joins,.amg-levels{grid-template-columns: 1fr;}.amg-level{border-left: 0;border-top: 1px solid var(--amg-border);}.amg-level:first-child{border-top: 0;}}
@media (max-width: 575px){.amg-main,.amg-side{padding: 16px;}.amg-result{padding: 16px;}.amg-clip{flex-wrap: wrap;}.amg-clip-main{flex-basis: calc(100% - 60px);}.amg-clip-acts{width: 100%;justify-content: flex-end;}.amg-limits{grid-template-columns: 1fr;}.amg-limits dd{border-top: 0;padding-top: 0;}.amg-guide h2{font-size: 20px;}}