.fc-pro{--accent:#8b5cf6;--accent-2:#2563eb;--ink:#e8f2ff;--muted:#94a3b8;--line:rgba(148,163,184,.2);container-type:inline-size;max-width:1240px;margin:auto;color:var(--ink)}.fc-pro *{box-sizing:border-box}.fc-pro button,.fc-pro input{font:inherit}.fc-pro [hidden]{display:none!important}.fc-header{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;margin-bottom:22px}.fc-eyebrow{display:block;margin-bottom:7px;color:#c4b5fd;font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.fc-header p{max-width:690px;margin:0;color:var(--muted);line-height:1.65}.fc-privacy{display:flex;align-items:center;gap:10px;flex:0 0 auto;padding:10px 13px;border:1px solid var(--line);border-radius:14px;background:rgba(15,23,42,.48);color:#cbd5e1;font-size:.76rem}.fc-privacy strong,.fc-privacy span:last-child{display:block}.fc-privacy strong{color:#f1f5f9;font-size:.8rem}.fc-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:20px;align-items:start}.fc-card{min-width:0;padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,rgba(15,33,56,.96),rgba(7,18,34,.96));box-shadow:0 22px 55px rgba(0,0,0,.18)}.fc-card-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.fc-card-head>div{display:flex;align-items:center;gap:10px}.fc-card-head h2{margin:0;color:#f8fafc;font-size:1.12rem}.fc-step{display:grid;place-items:center;width:31px;height:31px;border:1px solid rgba(167,139,250,.4);border-radius:10px;background:rgba(139,92,246,.12);color:#c4b5fd;font-size:.7rem;font-weight:900}.fc-text-btn{border:0;background:none;color:#c4b5fd;font-size:.8rem;font-weight:800;cursor:pointer}.fc-expression{display:grid;grid-template-columns:minmax(150px,1fr) 84px minmax(150px,1fr);gap:14px;align-items:center}.fc-fraction-card,.fc-operation{min-width:0;margin:0;padding:15px;border:1px solid var(--line);border-radius:16px;background:rgba(2,8,23,.3)}.fc-fraction-card legend,.fc-operation legend{padding:0 6px;color:#c4b5fd;font-size:.72rem;font-weight:850}.fc-fraction-card label{display:block}.fc-fraction-card label>span{display:block;margin-bottom:6px;color:#94a3b8;font-size:.68rem;font-weight:750}.fc-fraction-card input{width:100%;min-width:0;height:48px;padding:0 12px;border:1px solid rgba(148,163,184,.27);border-radius:11px;outline:0;background:rgba(2,8,23,.5);color:#f8fafc;text-align:center;font-size:1rem;font-weight:800}.fc-fraction-line{display:block;height:2px;margin:10px 4px;background:linear-gradient(90deg,transparent,#a78bfa 15%,#a78bfa 85%,transparent)}.fc-operation{padding:10px}.fc-operation>div{display:grid;grid-template-columns:1fr 1fr;gap:7px}.fc-operation label{display:block}.fc-operation input{position:absolute;opacity:0;pointer-events:none}.fc-operation label span{display:grid;place-items:center;height:39px;border:1px solid var(--line);border-radius:10px;background:rgba(15,23,42,.65);color:#94a3b8;font-size:1.08rem;font-weight:850;cursor:pointer}.fc-operation input:checked+span{border-color:#a78bfa;background:linear-gradient(135deg,rgba(139,92,246,.3),rgba(37,99,235,.18));color:#fff}.fc-fraction-card input:focus,.fc-operation input:focus-visible+span{border-color:#a78bfa;box-shadow:0 0 0 3px rgba(139,92,246,.13)}.fc-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.fc-tools button{min-height:38px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:rgba(15,23,42,.55);color:#cbd5e1;font-size:.72rem;font-weight:800;cursor:pointer}.fc-tools>span{color:#64748b;font-size:.68rem}.fc-error{margin-top:14px;padding:11px 13px;border:1px solid rgba(251,113,133,.35);border-radius:11px;background:rgba(190,18,60,.1);color:#fecdd3;font-size:.78rem}.fc-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:18px}.fc-primary,.fc-secondary{min-height:50px;border-radius:12px;font-weight:850;cursor:pointer}.fc-primary{display:flex;align-items:center;justify-content:center;gap:9px;border:0;background:linear-gradient(135deg,var(--accent),var(--accent-2));color:#fff}.fc-secondary{padding:0 19px;border:1px solid var(--line);background:rgba(15,23,42,.46);color:#cbd5e1}.fc-pro button:focus-visible{outline:2px solid #c4b5fd;outline-offset:2px}.fc-empty{display:grid;justify-items:center;padding:42px 18px;text-align:center}.fc-empty>span{display:grid;place-items:center;width:58px;height:58px;margin-bottom:13px;border:1px solid rgba(167,139,250,.3);border-radius:18px;background:rgba(139,92,246,.1);color:#c4b5fd;font-size:2rem}.fc-empty strong{color:#e2e8f0}.fc-empty p{margin:6px 0 0;color:#718096;font-size:.76rem}.fc-answer{padding:20px;border:1px solid rgba(167,139,250,.23);border-radius:17px;background:linear-gradient(135deg,rgba(139,92,246,.14),rgba(37,99,235,.06))}.fc-answer span,.fc-answer small{display:block;color:#94a3b8;font-size:.72rem}.fc-answer strong{display:block;margin:5px 0;color:#f8fafc;font-size:2.35rem;line-height:1.1;overflow-wrap:anywhere}.fc-stats{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:14px 0}.fc-stats>div{min-width:0;padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(2,8,23,.28)}.fc-stats dt{color:#718096;font-size:.67rem}.fc-stats dd{margin:4px 0 0;color:#e2e8f0;font-size:.85rem;font-weight:850;overflow-wrap:anywhere}.fc-work{padding:14px;border-radius:13px;background:rgba(30,41,59,.38)}.fc-work>strong{color:#ddd6fe;font-size:.75rem}.fc-work ol{margin:9px 0 0;padding-left:20px;color:#94a3b8;font-size:.72rem;line-height:1.55}.fc-work li+li{margin-top:5px}.fc-guide{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:18px;background:rgba(8,20,37,.65)}.fc-guide>div{padding:12px;border:1px solid var(--line);border-radius:12px;background:rgba(15,23,42,.38)}.fc-guide strong,.fc-guide span{display:block}.fc-guide strong{color:#ddd6fe;font-size:.76rem}.fc-guide span{margin-top:4px;color:#718096;font-size:.68rem;line-height:1.45}
@media(max-width:960px){.fc-layout{grid-template-columns:1fr}.fc-guide{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.fc-header{display:block}.fc-privacy{width:max-content;max-width:100%;margin-top:14px}.fc-card{padding:18px}.fc-expression{grid-template-columns:1fr}.fc-operation{padding:9px 12px}.fc-operation>div{grid-template-columns:repeat(4,1fr)}.fc-operation label span{height:44px}.fc-actions{grid-template-columns:1fr}.fc-secondary{grid-row:2;width:100%}.fc-primary{width:100%}.fc-guide{grid-template-columns:1fr}.fc-answer strong{font-size:2rem}.fc-fraction-card input{font-size:16px}.fc-tools{align-items:flex-start;flex-direction:column}}
@media(max-width:380px){.fc-card{padding:14px;border-radius:16px}.fc-card-head{align-items:flex-start;gap:10px}.fc-card-head h2{font-size:1rem}.fc-stats{grid-template-columns:1fr}.fc-guide{padding:12px}.fc-answer{padding:16px}.fc-answer strong{font-size:1.7rem}}

/* Respond to the widget's real width (the page sidebar can narrow it even on desktop). */
@container(max-width:1050px){.fc-layout{grid-template-columns:1fr}}
@container(max-width:620px){.fc-header{display:block}.fc-privacy{width:max-content;max-width:100%;margin-top:14px}.fc-card{padding:18px}.fc-expression{grid-template-columns:minmax(0,1fr)}.fc-operation{width:100%;padding:9px 12px}.fc-operation>div{grid-template-columns:repeat(4,minmax(0,1fr))}.fc-operation label span{height:44px}.fc-actions{grid-template-columns:1fr}.fc-secondary{grid-row:2;width:100%}.fc-primary{width:100%}.fc-guide{grid-template-columns:1fr}.fc-answer strong{font-size:2rem}.fc-fraction-card input{font-size:16px}.fc-tools{align-items:flex-start;flex-direction:column}}

/* Final narrow-viewport containment verified in a real browser. */
.fc-pro,.fc-layout,.fc-form,.fc-result,.fc-card-head,.fc-card-head>div{min-width:0;max-width:100%}
@media(max-width:420px){.fc-form .fc-card-head{align-items:flex-start;flex-wrap:wrap}.fc-form .fc-card-head>div{flex:1 1 190px}.fc-form .fc-text-btn{flex:0 0 auto}.fc-fraction-card{width:100%}.fc-operation>div{min-width:0}.fc-operation label,.fc-operation label span{min-width:0}.fc-tools>*{max-width:100%}}
@media(max-width:340px){.fc-form .fc-card-head{flex-direction:column}.fc-operation>div{grid-template-columns:1fr 1fr}.fc-tools button{width:100%}}
