.tn-suggestion-trigger {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 850;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 48px;
    padding: 0 18px;
    border: 1px solid rgba(16, 72, 182, .2);
    border-radius: 999px;
    background: #fff;
    color: #0a2d67;
    box-shadow: 0 12px 36px rgba(7, 36, 85, .2);
    font: inherit;
    font-weight: 750;
    cursor: pointer;
    transition: transform .16s ease, box-shadow .16s ease;
}

.tn-suggestion-trigger:hover { transform: translateY(-2px); box-shadow: 0 16px 42px rgba(7, 36, 85, .25); }
.tn-suggestion-trigger i { color: #0b62f4; }

.tn-suggestion-dialog {
    width: min(680px, calc(100vw - 32px));
    max-height: min(860px, calc(100vh - 32px));
    padding: 0;
    border: 0;
    border-radius: 22px;
    color: #0a2a60;
    background: #fff;
    box-shadow: 0 32px 90px rgba(4, 24, 58, .35);
    overflow: auto;
}

.tn-suggestion-dialog::backdrop { background: rgba(4, 22, 53, .68); backdrop-filter: blur(4px); }
.tn-suggestion-form { padding: 0; }
.tn-suggestion-dialog-header { display: grid; grid-template-columns: 48px 1fr 42px; gap: 14px; align-items: start; padding: 24px 26px 20px; border-bottom: 1px solid #e5edf8; background: linear-gradient(135deg, #f5f9ff, #fff); }
.tn-suggestion-icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 15px; background: #e5efff; color: #075cf0; font-size: 20px; }
.tn-suggestion-dialog-header p { margin: 0 0 3px; color: #1260dd; font-size: 11px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.tn-suggestion-dialog-header h2 { margin: 0; color: #08285f; font-size: clamp(23px, 4vw, 30px); line-height: 1.08; }
.tn-suggestion-dialog-header div > span { display: block; margin-top: 5px; color: #637697; font-size: 14px; }
.tn-suggestion-close { display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 50%; color: #5b6f91; background: #edf3fb; cursor: pointer; }
.tn-suggestion-context { margin: 20px 26px 0; padding: 11px 13px; border-radius: 10px; color: #1551ac; background: #eef5ff; font-size: 13px; font-weight: 700; }
.tn-suggestion-context i { margin-right: 7px; }
.tn-suggestion-fields { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; padding: 22px 26px 14px; }
.tn-suggestion-fields label { display: flex; flex-direction: column; gap: 7px; color: #122f61; font-size: 13px; font-weight: 750; }
.tn-suggestion-fields label > span small { color: #8190aa; font-weight: 600; }
.tn-suggestion-fields input, .tn-suggestion-fields select, .tn-suggestion-fields textarea { width: 100%; box-sizing: border-box; border: 1px solid #cbd8ea; border-radius: 10px; padding: 11px 12px; color: #102e60; background: #fff; font: inherit; font-weight: 500; outline: none; }
.tn-suggestion-fields textarea { resize: vertical; line-height: 1.5; }
.tn-suggestion-fields input:focus, .tn-suggestion-fields select:focus, .tn-suggestion-fields textarea:focus { border-color: #1565e8; box-shadow: 0 0 0 3px rgba(21, 101, 232, .12); }
.tn-suggestion-fields label > small { color: #7183a1; font-size: 11px; font-weight: 500; line-height: 1.4; }
.tn-suggestion-wide { grid-column: 1 / -1; }
.tn-suggestion-privacy { margin: 0 26px 16px; color: #73829b; font-size: 12px; line-height: 1.5; }
.tn-suggestion-error { margin: 0 26px 16px; padding: 11px 13px; border-radius: 9px; color: #9d1c35; background: #fff0f3; font-size: 13px; font-weight: 650; }
.tn-suggestion-footer { display: flex; justify-content: flex-end; gap: 10px; padding: 18px 26px 24px; border-top: 1px solid #e8eef7; }
.tn-suggestion-footer button, .tn-suggestion-success button { min-height: 44px; padding: 0 18px; border-radius: 9px; font: inherit; font-weight: 750; cursor: pointer; }
.tn-suggestion-cancel { border: 1px solid #cbd7e8; color: #344d75; background: #fff; }
.tn-suggestion-submit { display: inline-flex; align-items: center; gap: 10px; border: 0; color: #fff; background: #075cf0; }
.tn-suggestion-submit:disabled { opacity: .65; cursor: wait; }
.tn-suggestion-success { padding: 58px 34px; text-align: center; }
.tn-suggestion-success > span { display: grid; place-items: center; width: 64px; height: 64px; margin: 0 auto 18px; border-radius: 50%; color: #fff; background: #16ad79; font-size: 25px; }
.tn-suggestion-success h2 { margin: 0 0 10px; color: #092b64; font-size: 28px; }
.tn-suggestion-success p { max-width: 470px; margin: 0 auto 24px; color: #627493; line-height: 1.6; }
.tn-suggestion-success button { border: 0; color: #fff; background: #075cf0; }
.tn-suggestion-honeypot { position: absolute !important; left: -10000px !important; width: 1px; height: 1px; overflow: hidden; }

.tn-suggest-inline { display: inline-flex; align-items: center; gap: 6px; margin-top: 8px; padding: 0; border: 0; color: #0b62e9; background: transparent; font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; }
.tn-suggest-inline:hover { text-decoration: underline; }
.tn-place-info-row .tn-suggest-inline { grid-column: 2; justify-self: start; margin-top: 5px; }
.tn-place-side-card dd .tn-suggest-inline { margin-left: auto; }
.tn-place-safety-stat { position: relative; }
.tn-place-hero-stats .tn-place-stat-suggest { grid-column: 2; margin: 2px 0 0; padding: 0; border: 0; color: #0b62e9; background: transparent; font: inherit; font-size: 10px; font-weight: 800; text-align: left; cursor: pointer; }

@media (max-width: 640px) {
    .tn-suggestion-trigger { right: 14px; bottom: 14px; min-height: 44px; padding: 0 15px; }
    .tn-suggestion-dialog { width: calc(100vw - 18px); max-height: calc(100vh - 18px); border-radius: 17px; }
    .tn-suggestion-dialog-header { grid-template-columns: 42px 1fr 38px; padding: 19px 18px 16px; }
    .tn-suggestion-icon { width: 42px; height: 42px; }
    .tn-suggestion-fields { grid-template-columns: 1fr; padding: 18px; }
    .tn-suggestion-wide { grid-column: auto; }
    .tn-suggestion-context { margin: 16px 18px 0; }
    .tn-suggestion-privacy, .tn-suggestion-error { margin-left: 18px; margin-right: 18px; }
    .tn-suggestion-footer { padding: 16px 18px 20px; }
}

/* Content suggestion workflow */
.tn-suggestion-dialog [hidden] { display: none !important; }
.tn-suggestion-trigger { color:#fff; background:#075ee8; border-color:#075ee8; box-shadow:0 12px 30px rgba(7,69,177,.32); }
.tn-suggestion-trigger i { color:#fff; font-size:18px; }
.tn-suggestion-dialog { width:min(720px,calc(100vw - 28px)); border-radius:12px; color:#071b54; }
.tn-suggestion-panel { padding:34px 42px 24px; }
.tn-suggestion-simple-head,.tn-suggestion-wizard-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.tn-suggestion-simple-head h2,.tn-suggestion-wizard-head h2 { margin:0; color:#071b54; font-size:32px; font-weight:850; letter-spacing:-.03em; }
.tn-suggestion-simple-head p { margin:12px 0 0; font-size:17px; line-height:1.45; }
.tn-suggestion-close,.tn-suggestion-wizard-head>button { flex:0 0 38px; width:38px; height:38px; display:grid; place-items:center; border:0; background:transparent; color:#071b54; font-size:22px; cursor:pointer; }
.tn-suggestion-location-chip { display:inline-flex; align-items:center; gap:9px; margin:18px 0; padding:10px 17px; border-radius:999px; background:#eaf3ff; color:#075ad7; }
.tn-suggestion-choices { display:grid; gap:14px; }
.tn-suggestion-choice { display:grid; grid-template-columns:74px 1fr 24px; align-items:center; gap:16px; min-height:132px; padding:20px; border:1px solid #d5dfed; border-radius:10px; text-align:left; background:#fff; color:#0a245a; cursor:pointer; }
.tn-suggestion-choice.is-primary { border:2px solid #0873ff; box-shadow:0 8px 24px rgba(8,78,180,.13); }
.tn-suggestion-choice__icon { display:grid; place-items:center; width:66px; height:66px; border-radius:50%; color:#0869ed; background:#e3f0ff; font-size:27px; }
.tn-suggestion-choice__icon.orange { color:#ff720f; background:#fff0e1; }
.tn-suggestion-choice>span:nth-child(2) { display:flex; flex-direction:column; gap:6px; }
.tn-suggestion-choice strong { font-size:20px; }.tn-suggestion-choice small { color:#294777; font-size:14px; line-height:1.4; }.tn-suggestion-choice em { color:#1265e3; font-size:12px; font-style:normal; }
.tn-suggestion-recording { margin:26px 0 0; padding:16px 8px; border-block:1px solid #dce4ee; color:#445d86; font-size:12px; }.tn-suggestion-recording i{margin-right:8px}.tn-suggestion-my-link{display:block;padding:18px 0 2px;text-align:center;color:#0861dc;font-weight:750;text-decoration:none}
.tn-suggestion-wizard-head { align-items:center; padding:20px 28px 10px; }.tn-suggestion-wizard-head h2{font-size:25px}.tn-suggestion-wizard-head>button:first-child{font-size:18px}
.tn-suggestion-steps { display:flex; align-items:center; justify-content:center; gap:10px; padding:8px 0 18px; color:#425b87; font-size:13px; }.tn-suggestion-steps span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#e3eaf3}.tn-suggestion-steps span.active{color:#fff;background:#0964e5}.tn-suggestion-steps i{width:70px;height:2px;background:#c8d3e2}.tn-suggestion-steps.reviewing span:nth-of-type(2){color:#fff;background:#0964e5}
.tn-suggestion-wizard-body { padding:0 30px 12px; }.tn-suggestion-wizard-body>p{margin:0 0 17px;color:#294777;font-size:14px}
.tn-suggestion-field { position:relative; display:flex; flex-direction:column; gap:5px; margin:0 0 13px; color:#0a245a; font-size:13px; }.tn-suggestion-field b,.tn-suggestion-types b{color:#de1e42}.tn-suggestion-field em{font-weight:400}.tn-suggestion-field>small{color:#64789b;font-size:11px}.tn-suggestion-field textarea+small{text-align:right;margin-top:-3px}
.tn-suggestion-field input,.tn-suggestion-field textarea { width:100%; box-sizing:border-box; padding:9px 11px; border:1px solid #b9c9df; border-radius:6px; color:#0c285e; background:#fff; font:inherit; outline:0; }.tn-suggestion-field input:focus,.tn-suggestion-field textarea:focus{border-color:#0872ff;box-shadow:0 0 0 2px rgba(8,114,255,.12)}
.tn-location-search,.tn-input-icon{position:relative}.tn-location-search>i,.tn-input-icon>i{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#0b63df}.tn-location-search input,.tn-input-icon input{padding-left:38px}.tn-location-search button{position:absolute;right:5px;top:3px;width:32px;height:32px;border:0;background:transparent;color:#34537f;cursor:pointer}
.tn-location-results{position:absolute;z-index:10;top:100%;left:0;right:0;max-height:240px;overflow:auto;border:1px solid #b8c8de;border-radius:7px;background:#fff;box-shadow:0 10px 26px rgba(8,30,68,.18)}.tn-location-results button{display:grid;grid-template-columns:24px 1fr auto;width:100%;gap:8px;align-items:center;padding:10px 12px;border:0;background:#fff;color:#0a285e;text-align:left;cursor:pointer}.tn-location-results button:hover{background:#edf5ff}.tn-location-results span{display:flex;flex-direction:column}.tn-location-results small{color:#5d7398}.tn-location-results em{font-size:11px;font-style:normal}
.tn-suggestion-types{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:0 0 13px;padding:0;border:0}.tn-suggestion-types legend{grid-column:1/-1;margin-bottom:6px;font-size:13px;font-weight:750}.tn-suggestion-types input{position:absolute;opacity:0}.tn-suggestion-types span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:64px;padding:7px;border:1px solid #c9d5e5;border-radius:7px;color:#234572;text-align:center;font-size:11px;cursor:pointer}.tn-suggestion-types i{font-size:18px}.tn-suggestion-types input:checked+span{border:2px solid #0870f5;color:#075cda;background:#f2f7ff}
.tn-suggestion-capture{margin-top:13px;padding:11px 14px;border-radius:7px;background:#eef3f9;color:#597092;font-size:11px;line-height:1.8}.tn-suggestion-capture i{width:20px;color:#214b89}.tn-suggestion-review dl{margin:0;border:1px solid #d7e0eb;border-radius:8px;overflow:hidden}.tn-suggestion-review dl div{display:grid;grid-template-columns:145px 1fr;padding:11px 14px;border-bottom:1px solid #e4eaf2}.tn-suggestion-review dl div:last-child{border:0}.tn-suggestion-review dt{font-weight:750}.tn-suggestion-review dd{margin:0;color:#36517d}.tn-suggestion-review-note{display:flex;gap:12px;margin-top:14px;padding:14px;border-radius:8px;color:#0b4b9d;background:#eef6ff;font-size:12px}.tn-suggestion-review-note span{display:flex;flex-direction:column;gap:3px}
.tn-suggestion-footer{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;padding:14px 30px 18px}.tn-suggestion-footer button{min-height:38px}.tn-suggestion-error{margin:4px 30px 8px}.tn-suggestion-success a{display:inline-flex;margin-right:8px;padding:12px 18px;border-radius:9px;color:#fff;background:#075cf0;text-decoration:none;font-weight:750}.tn-suggestion-success button{background:#eef3fa;color:#173b71}
@media(max-width:700px){.tn-suggestion-panel{padding:24px 20px}.tn-suggestion-choice{grid-template-columns:54px 1fr 16px;padding:14px}.tn-suggestion-choice__icon{width:50px;height:50px}.tn-suggestion-choice strong{font-size:17px}.tn-suggestion-types{grid-template-columns:repeat(2,1fr)}.tn-suggestion-wizard-body{padding-inline:18px}.tn-suggestion-footer{padding-inline:18px;grid-template-columns:auto 1fr auto}.tn-suggestion-footer [data-save-draft-button]{display:none}.tn-suggestion-simple-head h2{font-size:27px}}
