.tos-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.8);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.tos-modal{width:100%;max-width:900px;max-height:85vh;background:linear-gradient(135deg,rgba(20,20,25,.98),rgba(15,15,20,.98));border:1px solid hsla(0,0%,100%,.08);border-radius:20px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px -12px rgba(0,0,0,.5),inset 0 0 0 1px hsla(0,0%,100%,.05)}.tos-header{justify-content:space-between;padding:20px 24px;border-bottom:1px solid hsla(0,0%,100%,.06);background:hsla(0,0%,100%,.02)}.tos-header,.tos-header-left{display:flex;align-items:center}.tos-header-left{gap:20px}.tos-header-left h2{margin:0;font-size:20px;font-weight:600;color:#fff;letter-spacing:-.02em}.tos-progress{display:flex;align-items:center;gap:12px}.tos-progress-bar{width:120px;height:4px;background:hsla(0,0%,100%,.08);border-radius:2px;overflow:hidden}.tos-progress-fill{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:2px}.tos-progress-text{font-size:12px;color:hsla(0,0%,100%,.5);font-weight:500}.tos-close{width:36px;height:36px;display:grid;place-items:center;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.08);border-radius:10px;color:hsla(0,0%,100%,.6);cursor:pointer;transition:all .2s ease}.tos-close:hover{background:hsla(0,0%,100%,.1);color:#fff}.tos-required-banner{padding:12px 24px;background:linear-gradient(90deg,rgba(251,146,60,.15),rgba(251,146,60,.05));border-bottom:1px solid rgba(251,146,60,.2);color:#fb923c;font-size:13px;font-weight:500;text-align:center}.tos-content{display:flex;flex:1 1;min-height:0;overflow:hidden}.tos-sidebar{width:220px;flex-shrink:0;padding:16px;border-right:1px solid hsla(0,0%,100%,.06);background:rgba(0,0,0,.2);display:flex;flex-direction:column;gap:4px;overflow-y:auto}.tos-section-btn{position:relative;display:flex;align-items:center;gap:10px;padding:12px 14px;background:transparent;border:none;border-radius:10px;color:hsla(0,0%,100%,.6);cursor:pointer;transition:all .2s ease;text-align:left}.tos-section-btn:hover{background:hsla(0,0%,100%,.05);color:hsla(0,0%,100%,.9)}.tos-section-btn.active{color:#fff}.tos-section-btn.filled .tos-section-icon{color:#8b5cf6}.tos-section-icon{width:28px;height:28px;display:grid;place-items:center;background:hsla(0,0%,100%,.05);border-radius:8px;transition:all .2s ease}.tos-section-label{flex:1 1;font-size:13px;font-weight:500}.tos-section-check{width:18px;height:18px;display:grid;place-items:center;background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-radius:50%;color:#fff}.tos-section-indicator{position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:linear-gradient(180deg,#8b5cf6,#a78bfa);border-radius:0 2px 2px 0}.tos-editor{min-width:0}.tos-editor,.tos-editor-panel{flex:1 1;display:flex;flex-direction:column;overflow:hidden}.tos-editor-panel{padding:24px}.tos-editor-header{margin-bottom:16px}.tos-editor-header h3{margin:0 0 6px;font-size:18px;font-weight:600;color:#fff}.tos-editor-header p{margin:0;font-size:13px;color:hsla(0,0%,100%,.5)}.tos-textarea{flex:1 1;min-height:200px;padding:16px;background:rgba(0,0,0,.3);border:1px solid hsla(0,0%,100%,.08);border-radius:12px;color:#fff;font-size:14px;line-height:1.6;resize:none;transition:all .2s ease}.tos-textarea::placeholder{color:hsla(0,0%,100%,.3)}.tos-textarea:focus{outline:none;border-color:rgba(139,92,246,.5);box-shadow:0 0 0 3px rgba(139,92,246,.1)}.tos-editor-nav{display:flex;justify-content:flex-end;gap:12px;margin-top:16px}.tos-nav-btn{display:flex;align-items:center;gap:6px;padding:10px 16px;background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.08);border-radius:10px;color:hsla(0,0%,100%,.8);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.tos-nav-btn:hover{background:hsla(0,0%,100%,.1);color:#fff}.tos-nav-btn.primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border-color:transparent;color:#fff}.tos-nav-btn.primary:hover{filter:brightness(1.1)}.tos-footer{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-top:1px solid hsla(0,0%,100%,.06);background:rgba(0,0,0,.2)}.tos-error{color:#f87171;font-size:13px}.tos-footer-actions{display:flex;gap:12px;margin-left:auto}.tos-btn{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.tos-btn.secondary{background:hsla(0,0%,100%,.05);border:1px solid hsla(0,0%,100%,.1);color:hsla(0,0%,100%,.8)}.tos-btn.secondary:hover{background:hsla(0,0%,100%,.1);color:#fff}.tos-btn.primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:none;color:#fff;box-shadow:0 4px 12px rgba(139,92,246,.3)}.tos-btn.primary:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 6px 16px rgba(139,92,246,.4)}.tos-btn.primary:disabled{opacity:.6;cursor:not-allowed}.tos-btn.primary.saved{background:linear-gradient(135deg,#22c55e,#16a34a);box-shadow:0 4px 12px rgba(34,197,94,.3)}@media(max-width:700px){.tos-modal{max-height:95vh}.tos-content{flex-direction:column}.tos-sidebar{width:100%;flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid hsla(0,0%,100%,.06);padding:12px;gap:8px}.tos-section-btn{flex-shrink:0;padding:10px 12px}.tos-section-label{display:none}.tos-section-indicator{left:50%;top:auto;bottom:0;transform:translateX(-50%);width:60%;height:3px;border-radius:2px 2px 0 0}}