:root{--tps-bg:#1a1a2e;--tps-text:#ffffff;--tps-accept:#4ade80;--tps-reject:#f87171;--tps-manage:#94a3b8;--tps-overlay:rgba(0,0,0,.6);--tps-prefs-bg:#ffffff;--tps-prefs-text:#1e293b;--tps-prefs-border:#e2e8f0;--tps-radius:10px;--tps-shadow:0 4px 24px rgba(0,0,0,.18);--tps-z:999999;--tps-font:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;--tps-transition:.3s cubic-bezier(.4,0,.2,1)}.tps-hidden{display:none!important}#tps-banner{position:fixed;left:0;right:0;background:var(--tps-bg);color:var(--tps-text);font-family:var(--tps-font);font-size:14px;line-height:1.5;z-index:var(--tps-z);box-shadow:var(--tps-shadow);padding:16px 24px;box-sizing:border-box}#tps-banner.tps-pos-bottom{bottom:0;top:auto;border-radius:var(--tps-radius) var(--tps-radius) 0 0}#tps-banner.tps-pos-top{top:0;bottom:auto;border-radius:0 0 var(--tps-radius) var(--tps-radius)}#tps-banner.tps-pos-center{top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:540px;border-radius:var(--tps-radius)}.tps-banner.tps-layout-bar .tps-banner__inner{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.tps-banner.tps-layout-bar .tps-banner__content{flex:1 1 260px}.tps-banner.tps-layout-bar .tps-banner__actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.tps-banner.tps-layout-box .tps-banner__inner{display:block}.tps-banner.tps-layout-box .tps-banner__actions{margin-top:14px;display:flex;gap:8px;flex-wrap:wrap}.tps-banner.tps-layout-minimal .tps-banner__inner{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.tps-banner.tps-layout-minimal .tps-banner__text{font-size:13px}.tps-banner.tps-layout-minimal .tps-banner__actions{display:flex;gap:6px}.tps-banner__text{margin:0 0 4px;font-size:14px}.tps-banner__subtext{margin:0;font-size:12px;opacity:.75}#tps-banner.tps-anim-slide.tps-pos-bottom{animation:tpsSlideUp var(--tps-transition) both}#tps-banner.tps-anim-slide.tps-pos-top{animation:tpsSlideDown var(--tps-transition) both}#tps-banner.tps-anim-slide.tps-pos-center{animation:tpsFadeIn var(--tps-transition) both}#tps-banner.tps-anim-fade{animation:tpsFadeIn var(--tps-transition) both}@keyframes tpsSlideUp{from{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes tpsSlideDown{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes tpsFadeIn{from{opacity:0}to{opacity:1}}.tps-btn{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:6px;border:none;cursor:pointer;font-family:var(--tps-font);font-size:13px;font-weight:600;line-height:1;transition:filter var(--tps-transition),transform .15s;white-space:nowrap;text-decoration:none}.tps-btn:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}.tps-btn:hover{filter:brightness(1.12)}.tps-btn:active{transform:scale(.97)}.tps-btn--accept{background:var(--tps-accept);color:#064e3b}.tps-btn--reject{background:var(--tps-reject);color:#450a0a}.tps-btn--manage{background:var(--tps-manage);color:#0f172a}.tps-btn--submit{background:var(--tps-accept);color:#064e3b;padding:11px 22px;font-size:14px}.tps-btn--sm{padding:7px 13px;font-size:12px}.tps-manage-btn{display:inline-flex;align-items:center;padding:9px 18px;border-radius:6px;border:2px solid currentColor;cursor:pointer;font-family:var(--tps-font);font-size:13px;font-weight:600;background:transparent;transition:background var(--tps-transition),color var(--tps-transition)}.tps-manage-btn:hover{background:rgba(0,0,0,.07)}.tps-manage-btn:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}.tps-overlay{position:fixed;inset:0;background:var(--tps-overlay);z-index:calc(var(--tps-z) + 1);display:flex;align-items:center;justify-content:center;animation:tpsFadeIn .2s both;padding:16px;box-sizing:border-box}.tps-prefs{background:var(--tps-prefs-bg);color:var(--tps-prefs-text);border-radius:var(--tps-radius);box-shadow:var(--tps-shadow);width:100%;max-width:520px;max-height:90vh;display:flex;flex-direction:column;font-family:var(--tps-font);animation:tpsSlideUp .25s both}.tps-prefs__header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 16px;border-bottom:1px solid var(--tps-prefs-border)}.tps-prefs__title{margin:0;font-size:17px;font-weight:700;color:var(--tps-prefs-text)}.tps-prefs__close{background:none;border:none;cursor:pointer;font-size:22px;line-height:1;color:#64748b;padding:4px 8px;border-radius:4px;transition:background .15s}.tps-prefs__close:hover{background:#f1f5f9}.tps-prefs__close:focus-visible{outline:3px solid #60a5fa}.tps-prefs__body{padding:20px 24px;overflow-y:auto;flex:1}.tps-prefs__body>p{margin:0 0 16px;font-size:13px;color:#475569}.tps-prefs__footer{display:flex;gap:8px;flex-wrap:wrap;padding:16px 24px;border-top:1px solid var(--tps-prefs-border)}.tps-category{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--tps-prefs-border)}.tps-category:last-child{border-bottom:none}.tps-category__info{flex:1}.tps-category__name{display:block;font-size:14px;font-weight:600;color:var(--tps-prefs-text);margin-bottom:2px}.tps-category__desc{margin:0;font-size:12px;color:#64748b}.tps-category__toggle{flex-shrink:0;padding-top:2px}.tps-toggle{display:inline-block;position:relative;width:40px;height:22px}.tps-toggle__input{position:absolute;opacity:0;width:0;height:0}.tps-toggle__slider{position:absolute;inset:0;background:#cbd5e1;border-radius:22px;cursor:pointer;transition:background var(--tps-transition)}.tps-toggle__slider::after{content:'';position:absolute;width:16px;height:16px;top:3px;left:3px;background:#fff;border-radius:50%;transition:transform var(--tps-transition);box-shadow:0 1px 4px rgba(0,0,0,.2)}.tps-toggle__input:checked~.tps-toggle__slider{background:var(--tps-accept,#4ade80)}.tps-toggle__input:checked~.tps-toggle__slider::after{transform:translateX(18px)}.tps-toggle__input:focus-visible~.tps-toggle__slider{outline:3px solid #60a5fa;outline-offset:2px}.tps-toggle-required{font-size:11px;font-weight:600;color:#64748b;background:#f1f5f9;padding:3px 8px;border-radius:20px;white-space:nowrap}.tps-float-btn{position:fixed;z-index:calc(var(--tps-z) - 1);display:inline-flex;align-items:center;gap:6px;background:var(--tps-bg);color:var(--tps-text);border:none;cursor:pointer;font-family:var(--tps-font);font-size:12px;font-weight:600;box-shadow:var(--tps-shadow);transition:filter var(--tps-transition),transform .15s}.tps-float-btn:hover{filter:brightness(1.15)}.tps-float-btn:active{transform:scale(.96)}.tps-float-btn:focus-visible{outline:3px solid #60a5fa;outline-offset:2px}.tps-float-btn--bottom-left{bottom:18px;left:18px}.tps-float-btn--bottom-right{bottom:18px;right:18px}.tps-float-btn--pill{padding:8px 16px;border-radius:50px}.tps-float-btn--icon{padding:10px;border-radius:50%}.tps-float-btn--icon span{display:none}.tps-rights-form-wrap{max-width:560px}.tps-form-row{margin-bottom:18px}.tps-label{display:block;font-family:var(--tps-font);font-size:13px;font-weight:600;margin-bottom:6px;color:inherit}.tps-required{color:#ef4444}.tps-input,.tps-select,.tps-textarea{display:block;width:100%;padding:9px 12px;border:1px solid #cbd5e1;border-radius:6px;font-family:var(--tps-font);font-size:14px;box-sizing:border-box;transition:border-color .2s,box-shadow .2s;background:#fff;color:#0f172a}.tps-input:focus,.tps-select:focus,.tps-textarea:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.2)}.tps-textarea{resize:vertical;min-height:90px}.tps-form-msg{margin-top:14px;padding:12px 16px;border-radius:6px;font-size:13px;font-family:var(--tps-font)}.tps-form-msg.tps-msg-ok{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.tps-form-msg.tps-msg-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.tps-table{width:100%;border-collapse:collapse;font-family:var(--tps-font);font-size:14px}.tps-table th,.tps-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #e2e8f0}.tps-table thead th{background:#f8fafc;font-weight:700}@media (max-width:600px){#tps-banner{padding:14px 16px}.tps-banner.tps-layout-bar .tps-banner__inner{flex-direction:column;align-items:flex-start;gap:12px}.tps-prefs{max-height:95vh;border-radius:var(--tps-radius) var(--tps-radius) 0 0}.tps-overlay{align-items:flex-end;padding:0}.tps-prefs__footer{flex-direction:column}.tps-btn{width:100%;justify-content:center}}