/* Native system typography, grouped controls, and quiet separators. */
#settings.settings-sheet{width:min(880px,calc(100% - 24px));background:#1c1c1e;border:1px solid #ffffff14;border-radius:22px;max-height:calc(100dvh - 24px);color:#f5f5f7;scroll-padding-top:70px}
.settings-sheet header{padding:14px 22px;background:#1c1c1ef5;backdrop-filter:blur(18px);min-height:66px;border-bottom:1px solid #ffffff12}
.settings-sheet h1{font-size:21px;font-weight:700;letter-spacing:-.025em;margin:0}
.settings-sheet #close-settings{color:#0a84ff;background:transparent;font-weight:600;font-size:17px;padding:8px 4px;min-width:52px;border-radius:10px}
.settings-sheet #settings-form{padding:2px 22px 8px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.settings-sheet fieldset{margin:20px 0 0;padding:0;border:0}
.settings-sheet legend{padding:0 15px 8px;font-size:12px;color:#a6a6ad;letter-spacing:0;text-transform:uppercase}
.settings-group{border-radius:13px;background:#2c2c2e;overflow:hidden}
.settings-sheet .row,.settings-sheet .settings-detail>summary{font-size:15px;line-height:1.3;min-height:54px;padding:5px 15px;gap:8px;margin:0;border:0;position:relative}
.settings-group>.row+.row::before,.settings-group>.settings-detail::before,.settings-group>.settings-action+.settings-action::before{content:'';position:absolute;left:15px;right:0;top:0;height:1px;background:#ffffff13}
.settings-sheet .row>span:first-child{flex:1;min-width:0}
.settings-sheet select{background:transparent;border:0;text-align:right;color:#b3b3bb;padding:6px 0;font-size:14px;max-width:59%;border-radius:5px;min-height:44px}
.settings-sheet select option{background:#2c2c2e;color:#fff}
.settings-sheet input[type=checkbox]{width:48px;height:29px;background:#505055}
.settings-sheet input[type=checkbox]:checked{background:#30d158}
.settings-sheet input[type=checkbox]::before{width:23px;height:23px}
.settings-sheet input[type=checkbox]:checked::before{transform:translateX(19px)}
.settings-sheet .settings-detail{position:relative;padding:0;border:0;margin:0}
.settings-sheet .settings-detail>summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;width:100%;color:inherit}
.settings-detail>summary::-webkit-details-marker{display:none}
.settings-sheet .settings-detail>summary::after{content:'';width:6px;height:6px;border-top:1.5px solid #8e8e93;border-right:1.5px solid #8e8e93;transform:rotate(45deg);margin:0 2px 0 5px;flex:none}
.settings-sheet .settings-detail[open]>summary::after{transform:rotate(135deg)}
.settings-detail>summary>span:first-child{flex:1}
.settings-sheet .detail-content{padding:0 15px 13px}
.settings-sheet .detail-content .row{padding:2px 0}
.settings-sheet .color-preview{display:block;width:23px;height:23px;border:1px solid #ffffff30;border-radius:50%;flex:none}
.settings-sheet .swatches{gap:3px;margin:0 -4px 4px}
.settings-sheet .swatch{width:40px;min-height:44px;height:44px;border-radius:24px;padding:3px}
.settings-sheet .swatch::before{width:27px;height:27px}
.settings-sheet input[type=range]{display:block;accent-color:#0a84ff;width:100%;min-height:44px}
.settings-sheet .range-scale{display:grid;margin-top:-3px;margin-bottom:4px}
.settings-sheet .range-default{color:#b7b7c0}
.settings-sheet .range-default::before{background:#b7b7c0}
.settings-sheet output{font-size:14px;color:#b3b3bb}
.settings-sheet .group-hint{padding:0 15px 11px;margin:0;color:#a6a6ad;font-size:11px;line-height:1.6}
.settings-sheet .number-control{display:flex;align-items:center;gap:5px;color:#a6a6ad;font-size:13px;flex:0 0 auto!important}
.settings-sheet input[type=number]{width:65px;min-height:44px;padding:5px 7px;background:#3a3a3c;border:0;border-radius:8px;text-align:right;color:#f5f5f7;font-size:16px;font-variant-numeric:tabular-nums}
.settings-sheet .settings-action{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:0;color:#0a84ff;padding:14px 15px;font-size:15px;position:relative;min-height:49px}
.settings-sheet footer{padding:4px 24px 18px;border:0}
.settings-sheet footer p{font-size:11px;margin:3px 0;color:#8e8e93}
.settings-sheet #transfer-status.error{color:#ff9f8d}
@media(max-width:650px){.settings-sheet #settings-form{grid-template-columns:minmax(0,1fr);gap:0;padding:2px 16px 8px}.settings-sheet header{padding:12px 17px}.settings-sheet footer{padding:8px 19px 18px}}
@media(orientation:landscape) and (max-height:500px){#settings.settings-sheet{max-height:calc(100dvh - 16px)}.settings-sheet header{min-height:56px;padding-top:6px;padding-bottom:6px}.settings-sheet fieldset{margin-top:16px}}
@media(orientation:portrait){#settings.settings-sheet{top:calc(var(--portrait-top) + 12px);bottom:calc(var(--portrait-bottom) + 12px);margin:auto;max-height:calc(100dvh - var(--portrait-top) - var(--portrait-bottom) - 24px)}}
