:root { --modern-ink:#202039;--modern-purple:#6350d8;--modern-line:#e5e4ef; }
body { color:var(--modern-ink);background:radial-gradient(ellipse at 95% 12%,#eeebff 0,transparent 34%),#f8f9fc; }
a { color:#5744bd; } a:hover { color:#3e2d99; }
header .navbar { padding:1.05rem 0;background:#ffffffec!important;border-bottom:1px solid #eae9f1!important; }
header .navbar-light .navbar-brand { display:inline-flex;align-items:center;gap:.65rem;background:none;padding-left:0;font-size:1.13rem;letter-spacing:-.045em;color:#24233e; }
.qr-brand-mark { width:36px;height:36px;color:#6350d8;flex:none; }
.qr-brand-light { font-weight:500; }
header .navbar-nav { justify-content:flex-end;gap:.35rem; }
header .nav-link { color:#626177!important;font-size:.84rem;font-weight:550; }
header .nav-link:hover { color:#5744bd!important; }
.qr-generator-nav { margin-top:1.25rem;margin-bottom:1.25rem; }
.qr-generator-nav-inner { gap:.25rem;border-bottom:1px solid var(--modern-line);padding-bottom:1rem; }
.qr-generator-nav-item { background:transparent;color:#6a697e;padding:.5rem .75rem;font-size:.79rem;border:1px solid transparent; }
.qr-generator-nav-item:hover { color:#5142af;background:#f0edff; }
.qr-generator-nav-item.active,.qr-generator-nav-item.active:hover { color:#5c48c5;background:#eeebff;border-color:#ddd6ff; }
.fqrc-header { display:flex;justify-content:space-between;align-items:center;gap:2rem;margin:2rem 0 1.75rem; }
.qr-eyebrow { display:block;font-size:.67rem;font-weight:750;letter-spacing:.18em;color:#7161b6;margin-bottom:.7rem; }
.fqrc-header h1 { font-size:clamp(2rem,4vw,3.15rem);line-height:1.12;letter-spacing:-.055em;color:#24233e;font-weight:760;margin-bottom:.8rem; }
.qr-headline-accent { color:#6953d8; }
.fqrc-header p { font-size:.96rem;line-height:1.65;color:#737186;max-width:630px; }
.qr-hero-note { flex:none;padding:1rem 1.2rem;border:1px solid #e3def6;border-radius:14px;background:#ffffffb8;color:#4f486a;font-size:.8rem;font-weight:600;line-height:1.8; }
.qr-hero-note small { font-size:.73rem;color:#71697e;font-weight:400; }
.qr-privacy-dot { display:inline-block;width:7px;height:7px;border-radius:50%;background:#478d72;margin-right:.4rem; }
.qr-workflow-steps { gap:0;background:#efedf6;padding:.35rem;border-radius:12px;max-width:560px;margin-bottom:1.5rem; }
.qr-workflow-steps a { border:0;background:transparent;justify-content:center;border-radius:8px;box-shadow:none;padding:.65rem .8rem;color:#71697e;font-size:.8rem; }
.qr-workflow-steps a[aria-current=location] { background:white;color:#4b3c94;box-shadow:0 2px 6px #29204408; }
.qr-workflow-steps a:hover { background:#fff9; }
.qr-workflow-steps span { background:#e8e3fa;color:#6350ba;width:22px;height:22px;font-size:.7rem; }
.fqrc-layout { gap:1.7rem;grid-template-columns:minmax(0,1.08fr) minmax(330px,.92fr); }
.fqrc-controls { border:1px solid var(--modern-line);border-radius:18px;box-shadow:0 8px 32px #30244404; }
.fqrc-section { border-color:#eeedf4;padding:1.35rem 1.5rem; }
.fqrc-section h3 { color:#3c3853;font-size:.95rem; }
.fqrc-label { color:#676078;font-size:.8rem;font-weight:600; }
.fqrc-input,.fqrc-select,.fqrc-textarea,.fqrc-color-row input[type=text],.qr-bulk-workspace .form-control,.qr-bulk-workspace .form-select { background:#fcfcfe;border-color:#dedde8;border-radius:9px;color:#373248; }
.fqrc-input:focus,.fqrc-select:focus,.fqrc-textarea:focus { border-color:#9482e5;box-shadow:0 0 0 3px #6953d814; }
.fqrc-textarea { min-height:120px;line-height:1.65; }
.fqrc-hint { color:#71697e;font-size:.77rem; }
.qr-disclosure { border-color:#eeedf4; }
.qr-disclosure>summary,.qr-preset-panel summary,.qr-check-details summary,.qr-print-options summary { color:#50485f;font-size:.85rem;font-weight:600; }
.qr-disclosure>summary small { color:#746b83;font-size:.73rem; }
.qr-disclosure>summary:hover { color:#6350d8; }
.qr-starter-grid button { background:#f5f2ff;border-color:#e7e0fd;color:#62529b; }
.fqrc-preview-card { border:1px solid #ded9f0;border-radius:18px;background:linear-gradient(145deg,#faf8ff,#fff 60%);box-shadow:0 8px 28px #5d428508;padding:1.25rem; }
.fqrc-preview-title { color:#413b56;font-size:.88rem; }
.fqrc-preview-title strong { font-weight:650; }
.fqrc-preview { background:#f0edf8;border:0;border-radius:12px;padding:1rem;min-height:250px; }
.fqrc-preview>svg,.fqrc-preview>img,.fqrc-preview>canvas { border-radius:5px;max-height:280px; }
#fqrc-status { background:#eaf3ed;color:#3a7357;font-size:.68rem;letter-spacing:.02em;border-radius:20px;padding:.3rem .65rem; }
.qr-verification { background:#f0f6f1;border:1px solid #dce9de;color:#4b7458;font-size:.75rem; }
.qr-verification[data-state=passed] { background:#f0f6f1;border-color:#dce9de;color:#416c50; }
.qr-check-details summary { font-size:.75rem;color:#71657e; }
.fqrc-download-card { border:1px solid var(--modern-line);border-radius:18px;background:white;padding:1.25rem;box-shadow:0 8px 28px #30244404; }
.fqrc-download-card h3 { color:#413a52;font-size:.9rem; }
.fqrc-primary-button,.qr-bulk-workspace .btn-primary,.qr-bulk-workspace .btn-success { background:#6350d8;border-color:#6350d8;color:white;box-shadow:0 5px 12px #6350d81a; }
.fqrc-primary-button:hover,.qr-bulk-workspace .btn-primary:hover,.qr-bulk-workspace .btn-success:hover { background:#5140bb;border-color:#5140bb; }
.fqrc-secondary-button { background:#f6f5fa;border-color:#eae7f1;color:#6a607b;font-size:.8rem; }
#fqrc-copy-image { grid-column:1/-1; }
.fqrc-reset { color:#71697e;border-color:#e3dfeb; }
#bulk-controls,.qr-bulk-progress,.qr-reader-drop,#bulk-results>.qr-batch-card { border-color:var(--modern-line);border-radius:18px;box-shadow:0 8px 28px #30244404; }
.qr-bulk-workspace>h1,.qr-reader h1 { color:#24233e;font-weight:750;letter-spacing:-.045em; }
.qr-bulk-progress progress { accent-color:#6350d8; }
#bulk-status { background:#f0edfa;color:#64557d; }
.qr-batch-card a { color:#6350d8; }
.qr-code-content { margin-top:3rem;line-height:1.8;color:#696477; }
.qr-code-content>section,.qr-code-content>.bg-light { padding:1.5rem;border:1px solid #e9e6f0;border-radius:14px;background:#ffffffa8!important;margin-bottom:1rem; }
.qr-code-content h2 { color:#3c354e;font-size:1.25rem;font-weight:650;letter-spacing:-.025em;margin-bottom:.8rem; }
.qr-code-content h3 { color:#514861;font-size:1.05rem; }
footer { background:#fff9;border-color:#e8e4ef!important;font-size:.82rem; }
:where(a,button,input,select,textarea,summary):focus-visible { outline-color:#7360cc; }
.qr-skip-link { background:#5140bb; }
@media(max-width:800px) {
    .fqrc-header { display:block;margin:1.5rem 0; }
    .fqrc-header h1 { font-size:2.1rem; }
    .fqrc-header p { font-size:.88rem; }
    .qr-eyebrow { font-size:.6rem; }
    .qr-hero-note { display:none; }
    .fqrc-layout { grid-template-columns:1fr; }
    .qr-workflow-steps { max-width:none; }
    .qr-workflow-steps a { padding:.65rem .4rem;font-size:.75rem; }
    .fqrc-controls>.fqrc-section,.fqrc-controls>.qr-advanced { border-color:var(--modern-line);border-radius:15px; }
    .fqrc-section { padding:1.1rem; }
    .fqrc-preview-card,.fqrc-download-card { padding:1rem; }
    .fqrc-preview { min-height:220px; }
    .qr-mobile-type { color:#716582; }
    .qr-mobile-type select { border-color:#ded7ef;background:#fff; }
    .qr-code-content>section { padding:1rem; }
}
.qr-language-switcher { display:flex;justify-content:flex-end;align-items:center;gap:.65rem;margin:0 0 0 1rem;color:#62566f;font-size:.85rem;order:2; }
.qr-language-switcher label { margin:0;font-weight:600; }
.qr-language-switcher select { min-height:44px;max-width:100%;padding:.55rem 2rem .55rem .85rem;border:1px solid #ded7ef;border-radius:10px;background-color:#fff;color:#352c45;font:inherit;cursor:pointer; }
.qr-language-switcher select:focus-visible { outline:3px solid #b8a7ee;outline-offset:2px; }
header .navbar-brand { order:0; }
header #site-navigation { order:1; }
header .navbar-toggler { order:3;margin-left:.5rem; }
@media(max-width:991.98px) {
    header #site-navigation { order:4;flex-basis:100%; }
    .qr-language-switcher { margin-left:auto; }
    .qr-language-switcher label { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
    .qr-language-switcher select { padding:.5rem .4rem;width:100px; }
}
@media(max-width:400px) {
    header .navbar-brand { font-size:1rem;margin-right:.35rem;gap:.4rem; }
    header .qr-brand-mark { width:30px;height:30px; }
    header .navbar-toggler { padding:.3rem; }
    .qr-language-switcher select { width:92px; }
}
