/* SmartVefur Gjafabréf — framendi */
.svgj-form { display: block; margin: 1.25em 0; }
.svgj-form .svgj-section { border: 0; padding: 0; margin: 0 0 1.4em; min-width: 0; }
.svgj-form legend { font-weight: 700; font-size: 1.05em; margin-bottom: .55em; padding: 0; }
.svgj-form p { margin: 0 0 .8em; }
.svgj-form label { display: block; font-weight: 600; margin-bottom: .25em; }
.svgj-form input[type="text"],
.svgj-form input[type="email"],
.svgj-form input[type="number"],
.svgj-form input[type="date"],
.svgj-form textarea { width: 100%; max-width: 100%; box-sizing: border-box; }
.svgj-form small { display: block; opacity: .75; font-size: .85em; margin-top: .2em; }
.svgj-form [hidden] { display: none !important; }

.svgj-amounts { display: flex; flex-wrap: wrap; gap: .5em; }
.svgj-pill { position: relative; margin: 0 !important; cursor: pointer; }
.svgj-pill input { position: absolute; opacity: 0; pointer-events: none; }
.svgj-pill > span { display: inline-block; padding: .6em 1.1em; border: 2px solid rgba(0,0,0,.15); border-radius: 999px; font-weight: 600; background: #fff; color: #1f2937; transition: border-color .15s, background .15s; }
.svgj-pill input:checked + span, .svgj-pill input:checked + span * { border-color: currentColor; background: #1f2937; color: #fff; }
.svgj-pill input:focus-visible + span { outline: 2px solid #2563eb; outline-offset: 2px; }

.svgj-toggle { display: grid; gap: .35em; margin-bottom: .8em; }
.svgj-toggle label { display: flex; align-items: center; gap: .5em; font-weight: 400; margin: 0; cursor: pointer; }
.svgj-toggle input { margin: 0; }

.svgj-experience { padding: 1em 1.2em; border-radius: 10px; background: #f7f1e3; border: 1px solid #e5d7b8; color: #2b2b2b; }
.svgj-experience strong { display: block; font-size: 1.25em; }

.svgj-designs { display: grid; grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); gap: .7em; }
.svgj-design { margin: 0 !important; cursor: pointer; position: relative; font-weight: 400 !important; }
.svgj-design input { position: absolute; opacity: 0; pointer-events: none; }
.svgj-swatch { display: flex; align-items: flex-end; aspect-ratio: 210 / 148; border-radius: 8px; padding: 8px 10px; box-sizing: border-box; box-shadow: 0 1px 3px rgba(0,0,0,.15); outline: 3px solid transparent; outline-offset: 2px; transition: outline-color .15s; overflow: hidden; }
.svgj-swatch b { font-size: 10px; letter-spacing: 2px; text-shadow: 0 1px 2px rgba(0,0,0,.25); }
.svgj-design input:checked + .svgj-swatch { outline-color: #1f2937; }
.svgj-design input:focus-visible + .svgj-swatch { outline-color: #2563eb; }
.svgj-design-label { display: block; text-align: center; font-size: .9em; margin-top: .35em; }

.svgj-buy { display: flex; gap: .6em; align-items: center; flex-wrap: wrap; }
.svgj-buy .quantity { margin: 0 !important; }

/* Klassísk karfa/greiðsla */
.svgj-redeem-toggle { margin-bottom: 1em; }
.svgj-redeem-form { margin: 0 0 1.5em; padding: 1em; border: 1px dashed rgba(0,0,0,.2); border-radius: 6px; }
.svgj-redeem-form .svgj-row { display: flex; gap: .5em; flex-wrap: wrap; }
.svgj-redeem-form input[type="text"] { flex: 1 1 200px; text-transform: uppercase; letter-spacing: 1px; }
.svgj-redeem-msg { margin-top: .6em; }
.svgj-redeem-msg.is-error { color: #b91c1c; }
.svgj-redeem-msg.is-ok { color: #166534; }
tr.svgj-total-row td a.svgj-remove { font-size: .85em; margin-left: .4em; }

/* Stöðusíða [svg_stada] */
.svgj-balance { max-width: 480px; }
.svgj-balance form { display: flex; gap: .5em; flex-wrap: wrap; }
.svgj-balance input[type="text"] { flex: 1 1 220px; text-transform: uppercase; letter-spacing: 1px; }
.svgj-balance-result { margin-top: 1em; padding: 1em 1.2em; border-radius: 8px; background: #f3f4f6; }
.svgj-balance-result.is-error { background: #fef2f2; color: #991b1b; }
.svgj-balance-result .svgj-big { font-size: 1.8em; font-weight: 700; display: block; }

/* Blokkakarfa */
.svgj-blocks { padding: 8px 16px; }
.svgj-blocks .svgj-blocks-form { display: flex; gap: 8px; margin-top: 8px; }
.svgj-blocks .svgj-blocks-form input { flex: 1; min-width: 0; text-transform: uppercase; padding: 8px 10px; border: 1px solid #949494; border-radius: 4px; }
.svgj-blocks .svgj-blocks-err { color: #cc1818; font-size: .875em; margin-top: 6px; }
.svgj-blocks .svgj-link { background: none; border: 0; padding: 0; text-decoration: underline; cursor: pointer; color: inherit; font-size: inherit; }
.svgj-blocks .wc-block-components-totals-item { padding: 4px 0; }
.svgj-blocks .svgj-remove-btn { background: none; border: 0; padding: 0; margin-left: 6px; font-size: .8em; text-decoration: underline; cursor: pointer; color: inherit; }
