body {
	background: radial-gradient(1200px 600px at 10% -10%, #ede4ff 0%, transparent 60%),
		radial-gradient(900px 500px at 110% 10%, #dff6ee 0%, transparent 55%), #f7f7fb;
	color: #16151d;
}
.sa { max-width: 1080px; margin: 0 auto; padding: 20px 16px 120px; }
.sa-top { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; }
.sa-logo {
	width: 36px; height: 36px; border-radius: 11px; display: grid; place-items: center;
	background: linear-gradient(135deg, #6d4aff, #19c39a); color: #fff; font-weight: 800;
}
.sa-brand { font-weight: 800; font-size: 20px; letter-spacing: -0.02em; }
.sa-hero h1 { font-size: clamp(28px, 7vw, 44px); line-height: 1.05; letter-spacing: -0.03em; margin: 0 0 10px; }
.sa-hero h1 span {
	background: linear-gradient(90deg, #6d4aff, #19c39a); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.sa-hero p { color: #5d5b6b; margin: 0 0 22px; font-size: 16px; }
.sa-grid { display: grid; gap: 16px; }
@media (min-width: 880px) { .sa-grid { grid-template-columns: 380px 1fr; align-items: start; } .sa-form { position: sticky; top: 16px; } }
.sa-card {
	background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(10px); border: 1px solid #e9e7f2;
	border-radius: 20px; padding: 18px; box-shadow: 0 10px 30px -18px rgba(40, 20, 120, 0.25);
}
.sa-form { display: grid; gap: 14px; }
.sa-textarea { height: auto; min-height: 84px; padding-top: 12px; padding-bottom: 12px; resize: vertical; font-family: inherit; line-height: 1.4; }
.sa-note { margin: 0 0 10px; font-size: 12px; color: #8a879a; }
.sa-go:disabled { opacity: 0.7; cursor: wait; }
.sa-label { font-size: 13px; font-weight: 600; color: #5d5b6b; margin-bottom: 6px; display: block; }
.sa-input {
	width: 100%; box-sizing: border-box; font: inherit; font-size: 16px; padding: 13px 14px; border-radius: 14px;
	border: 1px solid #dddbe8; background: #fff; color: #16151d; -webkit-text-fill-color: #16151d; caret-color: #6d4aff;
	opacity: 1; height: auto; line-height: 1.4; text-indent: 0;
}
.sa-input::placeholder { color: #9a98a8; -webkit-text-fill-color: #9a98a8; opacity: 1; }
.sa-input:focus { outline: 3px solid #6d4aff33; border-color: #6d4aff; }
.sa-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.sa-chip {
	font: inherit; font-size: 14px; padding: 9px 13px; border-radius: 999px; border: 1px solid #dddbe8;
	background: #fff; color: #16151d; cursor: pointer;
}
.sa-chip[aria-pressed="true"] { background: #16151d; color: #fff; border-color: #16151d; }
.sa-go {
	font: inherit; font-weight: 700; font-size: 17px; color: #fff; border: 0; border-radius: 16px; padding: 16px;
	background: linear-gradient(135deg, #6d4aff, #4b8bff); cursor: pointer; width: 100%;
	box-shadow: 0 10px 24px -10px #6d4aff;
}
.sa-go:active { transform: scale(0.98); }
.sa-sticky { display: none; }
@media (max-width: 879px) {
	.sa-sticky {
		display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 10;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom)); background: rgba(247, 247, 251, 0.92);
		backdrop-filter: blur(10px); border-top: 1px solid #e9e7f2;
	}
	.sa-form .sa-go { display: none; }
}
.sa-err { background: #fff0f0; color: #b42318; border-radius: 12px; padding: 10px 12px; font-size: 14px; }
.sa-res-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.sa-res-head h2 { margin: 0; font-size: 20px; scroll-margin-top: 16px; }
.sa-tabs { display: flex; gap: 6px; overflow-x: auto; padding-bottom: 4px; margin-bottom: 12px; }
.sa-tab {
	font: inherit; font-size: 14px; white-space: nowrap; padding: 8px 14px; border-radius: 12px; border: 1px solid #e3e1ee;
	background: #fff; cursor: pointer; color: #16151d;
}
.sa-tab[aria-selected="true"] { background: #efeaff; border-color: #6d4aff; color: #4a2fd6; font-weight: 600; }
.sa-ad { border: 1px solid #ecebf3; border-radius: 16px; background: #fff; padding: 16px; }
.sa-ad-title { font-size: 19px; font-weight: 750; line-height: 1.3; margin-bottom: 10px; }
.sa-ad-text { white-space: pre-wrap; font: inherit; margin: 0; color: #2f2d3a; line-height: 1.55; overflow-wrap: anywhere; }
.sa-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
.sa-btn {
	font: inherit; font-size: 14px; font-weight: 600; padding: 12px; border-radius: 12px; border: 1px solid #dddbe8;
	background: #fff; color: #16151d; cursor: pointer;
}
.sa-btn-main { grid-column: 1 / -1; background: #16151d; color: #fff; border-color: #16151d; font-size: 15px; }
.sa-btn.done { background: #19c39a; border-color: #19c39a; color: #fff; }
.sa-empty { text-align: center; padding: 40px 12px; color: #5d5b6b; }
.sa-empty b { display: block; color: #16151d; font-size: 17px; margin-bottom: 6px; }
.sa-count { display: flex; gap: 6px; }
