.usage-feedback{margin:64px 0 20px;padding-top:40px;border-top:1px solid #c0d8e6;scroll-margin-top:28px}
.usage-feedback h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.025em;line-height:1.3}
.feedback-section-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}
.feedback-section-heading p{color:#47627c;font-size:15px;margin:10px 0 0;line-height:1.7}
.feedback-section-heading a{font-size:14px;white-space:nowrap;color:#056b91}
.feedback-compose{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(260px,1fr);gap:40px;padding:32px;background:#fffffff0;border-radius:20px}
.feedback-compose label,.feedback-compose legend,.feedback-admin-main label{font-size:14px;font-weight:600;color:#203a54}
.feedback-form-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px;margin-bottom:24px}
.feedback-form-row label,.feedback-content-label,.feedback-admin-main label{display:flex;flex-direction:column;gap:8px;min-width:0}
.feedback-form-row label>span{font-size:12px;font-weight:400;color:#47627c;display:none}
.feedback-form-row input,.feedback-form-row select,.feedback-content-label textarea,.feedback-admin-main input,.feedback-admin-main select{width:100%;font-size:16px!important;font-weight:400;line-height:1.5;margin:0}
.feedback-content-label textarea{resize:vertical;min-height:170px;background:#fff!important}
.feedback-rating{margin-bottom:20px}.feedback-rating legend{margin-bottom:4px}
.feedback-stars{display:flex;gap:2px;width:max-content;max-width:100%}
.feedback-stars label{display:grid;place-items:center;width:44px;height:44px;cursor:pointer;border-radius:8px;position:relative}
.feedback-stars svg{width:30px;height:30px;fill:transparent;stroke:#587b96;stroke-width:1.5;stroke-linejoin:round}
.feedback-stars label:has(input:checked) svg,.feedback-stars label:has(~label input:checked) svg{fill:#087fa4;stroke:#087fa4}
.feedback-stars label:focus-within{outline:2px solid #0073ad;outline-offset:2px}.feedback-stars label:hover{background:#eaf7fc}
.feedback-rating p{font-size:13px;color:#47627c;margin:2px 0 0}
.feedback-submit-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:12px}
.feedback-submit-row>span{font-size:13px;color:#47627c;font-variant-numeric:tabular-nums}
.feedback-submit-row button,.feedback-section-heading button,.feedback-admin-main button{min-height:44px;font-size:14px;padding:10px 18px}
.feedback-message{font-size:14px;line-height:1.8;overflow-wrap:anywhere;color:#174e6f;margin:16px 0 0;min-height:1.8em}
.feedback-notice{padding:4px 0 0 8px;align-self:start}.feedback-notice h3{font-size:17px;margin-bottom:16px}
.feedback-notice ol{padding-left:20px;margin:0;color:#47627c;font-size:14px;line-height:1.9}.feedback-notice li+li{margin-top:12px}
.feedback-notice>p{color:#225977;font-size:14px;line-height:1.9;margin:24px 0 0}
.feedback-comments{margin-top:44px;padding:28px 32px;background:#fffffff0;border-radius:20px;scroll-margin-top:24px}
.feedback-comments h3{font-size:22px}.feedback-comments .feedback-section-heading{margin-bottom:8px}
.feedback-list-note{font-size:13px;color:#47627c;margin:0 0 16px}
.feedback-comment{padding:24px 0;border-top:1px solid #d5e5ee;min-width:0}
.feedback-comment-heading{display:flex;align-items:center;gap:12px}.feedback-avatar{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:50%;background:#e0f2f9;color:#086787;font-size:18px;font-weight:650}
.feedback-identity{display:flex;flex-direction:column;gap:2px;min-width:0;overflow-wrap:anywhere}.feedback-identity strong{font-size:15px}.feedback-identity time{font-size:12px;color:#47627c}
.feedback-comment-rating{margin-left:auto;font-size:14px;color:#086787;white-space:nowrap;font-variant-numeric:tabular-nums}
.feedback-comment-body{font-size:16px;line-height:1.9;white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0 12px;max-width:75ch}
.feedback-comment-meta{font-size:13px;color:#47627c;margin:0;overflow-wrap:anywhere;line-height:1.8}
.feedback-empty{font-size:15px;color:#47627c;padding:24px 0;margin:0;border-top:1px solid #d5e5ee;line-height:1.8}
.feedback-management-link{margin-top:16px;text-align:right}.feedback-management-link a{font-size:13px;color:#47627c}
.feedback-admin-main{max-width:1050px;margin:48px auto;padding:0 24px 48px}.feedback-admin-main h1{font-size:38px;margin:0 0 14px}.feedback-admin-intro{font-size:16px;line-height:1.8;color:#47627c}
.feedback-admin-login{max-width:620px;padding:28px 32px;background:#fffffff0;border-radius:20px;margin-top:32px}.feedback-admin-login h2{font-size:22px}.feedback-admin-login p{font-size:14px;line-height:1.8;color:#47627c}
.feedback-admin-login button{margin-top:18px}.feedback-admin-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px}.feedback-admin-toolbar label{width:180px}.feedback-admin-toolbar .actions{margin:0}
#admin-workspace{background:#fffffff0;border-radius:20px;padding:28px 32px;margin-top:24px}.feedback-admin-summary{font-size:14px;color:#47627c;margin:24px 0 0;line-height:1.8}
.feedback-admin-main .feedback-comment .actions button{font-size:14px;min-height:44px}
@media(max-width:850px){.feedback-compose{grid-template-columns:1fr;gap:28px}.feedback-notice{padding:24px 0 0;border-top:1px solid #d5e5ee}.feedback-notice ol{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.feedback-notice li+li{margin:0}}
@media(max-width:600px){.usage-feedback{margin-top:40px;padding-top:28px}.feedback-section-heading{align-items:start;flex-direction:column;gap:12px;margin-bottom:18px}.feedback-compose,.feedback-comments{padding:20px}.feedback-form-row{grid-template-columns:1fr 1fr;gap:14px}.feedback-form-row>label:first-child{grid-column:1/-1}.feedback-notice ol{display:block}.feedback-notice li+li{margin-top:10px}.feedback-submit-row{align-items:start;flex-direction:column;gap:10px}.feedback-submit-row button{width:100%}.feedback-comment-rating{font-size:13px}.feedback-comments>.feedback-section-heading{flex-direction:row;align-items:center;gap:10px}.feedback-comments h3{font-size:19px}.feedback-section-heading button{font-size:13px;padding:8px 12px;flex:none}.feedback-admin-main{padding:0 16px 36px;margin-top:32px}.feedback-admin-login,#admin-workspace{padding:22px 20px}.feedback-admin-toolbar{align-items:stretch;flex-direction:column}.feedback-admin-toolbar label{width:100%}.feedback-admin-toolbar .actions{gap:8px}.feedback-admin-main h1{font-size:30px}}
