/* klippi — sami handteiknaði stíll og líf.is: Yuanmo, blekrammar og litaðir skuggar. */
@font-face{font-family:'Yuanmo';src:url('letur/yuanmo.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Yuanmo';src:url('letur/eth.ttf') format('truetype');font-display:swap;unicode-range:U+00F0}
:root{
 --ink:#2a2633;--soft:#6a6475;--paper:#fffbf0;--page:#f6f1e3;
 --gul:#f7d44c;--graen:#8fd18b;--bleik:#f6a5c9;--bla:#8ccaf2;--raud:#f07a63;--skogur:#6fb38a;--fjola:#b9a3e8;
 --gul-t:#fff3c4;--graen-t:#e2f5dc;--bleik-t:#fde3ef;--bla-t:#ddf0fc;--raud-t:#fde0d8;--skogur-t:#dcefe2;--fjola-t:#ece5fb;
 --hand:'Yuanmo','KN Yuanmo SC','Comic Sans MS','Chalkboard SE',cursive;
 --body:ui-rounded,'SF Pro Rounded',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
 --rudur:repeating-conic-gradient(#e9e3d3 0 25%,#fffbf0 0 50%) 0 0/22px 22px;
 color:var(--ink);font-family:var(--body);font-synthesis:none;-webkit-text-size-adjust:100%;
}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:var(--page);overflow-x:hidden;line-height:1.45}
button,input,select{font:inherit;color:inherit}
button{cursor:pointer;touch-action:manipulation}
:focus-visible{outline:3px dashed var(--ink);outline-offset:3px}
[hidden]{display:none!important}
.defs{position:absolute;width:0;height:0}
.c-gul{--c:var(--gul);--t:var(--gul-t)}.c-graen{--c:var(--graen);--t:var(--graen-t)}.c-bleik{--c:var(--bleik);--t:var(--bleik-t)}.c-bla{--c:var(--bla);--t:var(--bla-t)}.c-raud{--c:var(--raud);--t:var(--raud-t)}.c-fjola{--c:var(--fjola);--t:var(--fjola-t)}
.smatt{font-size:13.5px;color:var(--soft);margin:8px 0 0}

/* Haus */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:14px;padding:10px max(16px,3vw);background:color-mix(in oklab,var(--page) 92%,transparent);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.top::after{content:'';position:absolute;left:0;right:0;bottom:-3px;height:6px;background:var(--ink);clip-path:polygon(0 30%,8% 55%,19% 25%,33% 60%,47% 30%,61% 58%,74% 28%,88% 62%,100% 35%,100% 70%,88% 90%,74% 62%,61% 92%,47% 64%,33% 94%,19% 60%,8% 88%,0 66%)}
.brand{display:flex;align-items:center;gap:8px;text-decoration:none;color:var(--ink);flex-shrink:0}
.brand img{width:42px;height:42px;transform:rotate(-10deg)}
.brand-text{display:grid;line-height:.84;transform:rotate(-3deg)}
.brand-name{font-family:var(--hand);font-size:40px;letter-spacing:-1px}
.brand-name b{font-weight:400;color:var(--raud)}
.brand-kicker{font-family:var(--hand);font-size:13px;color:var(--soft);margin-left:3px}
.skref{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.skref a{font-family:var(--hand);font-size:17px;text-decoration:none;color:var(--ink);padding:6px 12px 4px;border:2.5px solid var(--ink);border-radius:14px 9px 15px 8px;background:var(--paper);box-shadow:2px 2px 0 var(--ink)}
.skref a[aria-current=page]{background:var(--gul);transform:rotate(-2deg)}
main{padding:24px max(16px,3vw) 60px;max-width:1320px;margin:0 auto}

/* Takkar */
.takki{display:inline-flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;color:var(--ink);border:2.5px solid var(--ink);background:var(--c,var(--paper));font-family:var(--hand);font-size:19px;line-height:1.1;padding:8px 15px 5px;border-radius:16px 10px 18px 9px;box-shadow:3px 3px 0 var(--ink);transition:transform .12s}
@media(hover:hover){.takki:not([disabled]):hover{transform:rotate(-2deg) scale(1.04)}}
.takki:active{transform:translate(3px,3px);box-shadow:none}
.takki.hljodur{background:var(--paper);box-shadow:2px 2px 0 var(--ink);font-size:16px;padding:6px 11px 4px}
.takki.litill{font-size:14px;padding:4px 9px 3px}
.takki[disabled]{opacity:.45;cursor:default}
.flipar{display:flex;flex-wrap:wrap;gap:7px}
.flipi{display:inline-flex;align-items:center;gap:6px;border:2.5px solid var(--ink);background:var(--paper);border-radius:13px 8px 14px 7px;padding:5px 11px 3px;font-family:var(--hand);font-size:16px;box-shadow:2px 2px 0 var(--ink)}
.flipi[aria-pressed=true]{background:var(--gul);transform:rotate(-2deg)}
.flipi .punktur{width:13px;height:13px;border-radius:50%;background:var(--punktur);border:2px solid var(--ink)}
.litur-takki{width:40px;height:40px;border-radius:12px 8px 13px 7px;border:2.5px solid var(--ink);box-shadow:2px 2px 0 var(--ink);padding:0}
.litur-takki.litill{width:30px;height:30px;border-radius:50%}
.litur-takki[aria-pressed=true]{transform:scale(1.12) rotate(-4deg);outline:3px dotted var(--ink);outline-offset:3px}

/* Heim */
.hetja{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:36px;align-items:center;margin:10px 0 50px}
.hetja h1{font-family:var(--hand);font-weight:400;font-size:clamp(48px,6.4vw,92px);line-height:.94;margin:0 0 16px;transform:rotate(-2deg)}
.hl{display:inline-block;background:var(--bleik);border:3px solid var(--ink);border-radius:18px 10px 20px 12px;padding:0 14px 6px;box-shadow:4px 4px 0 var(--ink);transform:rotate(2deg)}
.inngangur{font-size:19px;color:var(--soft);max-width:600px;margin:0 0 24px}
.byrja{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:640px}
.stor-takki{display:grid;justify-items:center;gap:6px;padding:16px 10px 12px;border:3px solid var(--ink);background:var(--t);border-radius:22px 14px 24px 13px;box-shadow:5px 6px 0 var(--c);font-family:var(--hand);font-size:21px;transition:transform .15s}
.stor-takn{font-size:44px;line-height:1}
@media(hover:hover){.stor-takki:hover{transform:translateY(-4px) rotate(-1.5deg)}}
.stor-takki:active{transform:translate(3px,4px);box-shadow:none}
.leynd{margin:20px 0 0;font-size:15px;color:var(--soft)}
.sleppa{display:grid;place-items:center;text-align:center;aspect-ratio:1;border:3px dashed #2a263355;border-radius:30px 20px 34px 18px;color:var(--soft);font-family:var(--hand);font-size:20px;transition:background .15s}
.sleppa span{font-size:80px;line-height:1;transform:rotate(-20deg)}
.sleppa.yfir{background:var(--bleik-t);border-color:var(--ink)}
.kafli>header{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 16px;margin-bottom:18px}
.kafli>header h2{font-family:var(--hand);font-weight:400;font-size:clamp(32px,4vw,44px);line-height:1;margin:0;transform:rotate(-1.5deg)}
.kafli>header p{margin:0;color:var(--soft)}
.safn-takkar{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}
.safn{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:18px}
.safn-hlutur{display:grid;justify-items:center;gap:6px;padding:12px 10px 10px;background:var(--rudur);border:2.5px solid var(--ink);border-radius:18px 12px 20px 10px;box-shadow:4px 4px 0 var(--ink)}
.safn-hlutur:nth-child(odd){border-radius:12px 20px 10px 18px}
.safn-hlutur img{width:100%;height:120px;object-fit:contain}
.safn-hlutur b{font-family:var(--hand);font-weight:400;font-size:18px;background:var(--paper);border-radius:8px;padding:2px 8px 0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.safn-adgerdir{display:flex;gap:4px}
.safn-adgerdir button{width:36px;height:34px;border:2px solid var(--ink);border-radius:10px 7px 11px 6px;background:var(--paper);font-size:16px;padding:0}
.safn-tomt{grid-column:1/-1;padding:30px;text-align:center;color:var(--soft);border:3px dashed #2a263333;border-radius:20px}

/* Klippa */
.ritill{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
.ritill-svid{position:relative;height:calc(100vh - 140px);min-height:420px;background:var(--rudur);border:3px solid var(--ink);border-radius:22px 14px 24px 13px;box-shadow:6px 7px 0 var(--fjola);overflow:hidden}
#ritill-canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:crosshair}
.tolasla{display:grid;gap:14px;position:sticky;top:90px}
.sjalfvirkt{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sjalfvirkt .takki{font-size:17px;padding:10px 8px 7px}
.galdur{background:linear-gradient(135deg,var(--fjola),var(--bleik))}
.tolin{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.tol{display:grid;justify-items:center;gap:2px;padding:7px 2px 5px;border:2.5px solid var(--ink);background:var(--paper);border-radius:13px 8px 14px 7px;font-family:var(--hand);font-size:12.5px;box-shadow:2px 2px 0 var(--ink)}
.tol span{font-size:22px;line-height:1}
.tol[aria-pressed=true]{background:var(--gul);transform:translateY(-3px) rotate(-2deg);box-shadow:3px 4px 0 var(--ink)}
.tol-hjalp{margin:0;min-height:42px;padding:8px 12px;background:var(--paper);border:2px dashed var(--ink);border-radius:12px 8px 13px 7px;font-size:14.5px}
.stillingar{display:grid;gap:10px}
.renna{display:grid;gap:4px;font-size:14px;font-weight:600}
.renna input{width:100%;accent-color:var(--raud)}
.saga{display:flex;flex-wrap:wrap;gap:7px}
.ritill-lok{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}

/* Skreyta */
.skreyta{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:26px;align-items:start}
.forsyn{display:grid;place-items:center;min-height:min(70vh,640px);padding:30px;border:3px solid var(--ink);border-radius:22px 14px 24px 13px;box-shadow:6px 7px 0 var(--bleik)}
.forsyn[data-bakgrunnur=ruda]{background:var(--rudur)}.forsyn[data-bakgrunnur=ljost]{background:var(--paper)}.forsyn[data-bakgrunnur=dokkt]{background:#2a2633}
.forsyn-mynd{max-width:100%;max-height:min(62vh,580px);width:auto;height:auto}
.forsyn.margir{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px}
.forsyn.margir .forsyn-mynd{max-width:min(46%,320px);max-height:260px}
.skreyta-stillingar{display:grid;gap:14px}
.skreyta-stillingar h2{font-family:var(--hand);font-weight:400;font-size:34px;margin:0;transform:rotate(-1.5deg)}
.val h3{margin:0 0 6px;font-size:15px}
.reitur{display:grid;gap:4px;font-size:14.5px;font-weight:600}
.reitur input{padding:10px 12px;border:2.5px solid var(--ink);border-radius:12px 8px 13px 7px;background:var(--paper);font-size:16px;font-weight:400}
.vista-takkar{display:flex;flex-wrap:wrap;gap:9px}

/* Klippimynd */
.km-haus,.pr-haus{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;margin-bottom:16px}
.km-haus h2,.pr-haus h2{font-family:var(--hand);font-weight:400;font-size:clamp(32px,4vw,44px);margin:0;transform:rotate(-1.5deg)}
.km-rammi{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:24px;align-items:start}
.km-umgjord{position:relative;overflow:hidden}
.km-bord{position:absolute;left:0;top:0;transform-origin:0 0;border:4px solid var(--ink);box-shadow:8px 9px 0 var(--graen);overflow:hidden;touch-action:none}
.km-hlutur{position:absolute;left:0;top:0;touch-action:none;cursor:grab;user-select:none;-webkit-user-select:none}
.km-hlutur img{width:100%;height:100%;object-fit:contain;pointer-events:none;-webkit-user-drag:none}
.km-hlutur.valinn::after{content:'';position:absolute;inset:-10px;border:calc(3px / var(--s)) dashed var(--ink);border-radius:12px;pointer-events:none}
.km-handfang{position:absolute;right:-24px;bottom:-24px;width:34px;height:34px;border-radius:50%;background:var(--gul);border:3px solid var(--ink);transform:scale(calc(1.6 / var(--s)));cursor:nwse-resize;touch-action:none}
.km-texti{display:grid;place-items:center;width:100%;height:100%;font-family:var(--hand);font-size:80px;line-height:1;white-space:nowrap;pointer-events:none;text-shadow:-4px -4px 0 var(--utlina),4px -4px 0 var(--utlina),-4px 4px 0 var(--utlina),4px 4px 0 var(--utlina),0 5px 0 var(--utlina),5px 0 0 var(--utlina),0 -5px 0 var(--utlina),-5px 0 0 var(--utlina)}
.km-hlid{display:grid;gap:16px}
.km-hluti h3{margin:0 0 8px;font-family:var(--hand);font-weight:400;font-size:20px}
.km-safn{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px;max-height:260px;overflow:auto;padding:4px}
.km-safn-takki{aspect-ratio:1;padding:4px;border:2.5px solid var(--ink);border-radius:12px 8px 13px 7px;background:var(--rudur);box-shadow:2px 2px 0 var(--ink)}
.km-safn-takki img{width:100%;height:100%;object-fit:contain}
.km-texta-rod{display:flex;gap:8px}
.km-texta-rod input{flex:1;min-width:0;padding:8px 10px;border:2.5px solid var(--ink);border-radius:12px 8px 13px 7px;background:var(--paper)}
.km-textalitir,.km-bakgrunnar{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}

/* Prenta */
.pr-rammi{display:grid;grid-template-columns:340px minmax(0,1fr);gap:26px;align-items:start}
.pr-hlid{display:grid;gap:16px}
.pr-stillingar{display:grid;gap:12px;padding:14px;background:var(--paper);border:2.5px solid var(--ink);border-radius:18px 12px 20px 10px;box-shadow:4px 4px 0 var(--gul)}
.pr-listi{list-style:none;margin:0;padding:0;display:grid;gap:8px;max-height:60vh;overflow:auto}
.pr-hlutur{display:grid;grid-template-columns:56px 1fr auto;gap:10px;align-items:center;padding:6px 10px 6px 6px;background:var(--paper);border:2px solid var(--ink);border-radius:12px 8px 13px 7px}
.pr-hlutur.valinn{background:var(--graen-t);box-shadow:3px 3px 0 var(--graen)}
.pr-hlutur img{width:56px;height:48px;object-fit:contain;background:var(--rudur);border-radius:8px}
.pr-hlutur select{grid-column:1/-1;padding:5px 8px;border:2px solid var(--ink);border-radius:9px;background:var(--paper)}
.pr-velja{grid-column:1/-1;display:grid;grid-template-columns:auto 56px 1fr;gap:10px;align-items:center;cursor:pointer}
.pr-velja input{width:22px;height:22px;accent-color:var(--skogur)}
.pr-hlutur:has(.pr-velja){grid-template-columns:1fr}
.pr-nafn{font-family:var(--hand);font-size:17px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pr-fjoldi{display:flex;align-items:center;gap:6px}
.pr-fjoldi button{width:30px;height:30px;border:2px solid var(--ink);border-radius:50%;background:var(--paper);font-size:18px;line-height:1;padding:0}
.pr-fjoldi b{min-width:22px;text-align:center;font-family:var(--hand);font-size:19px;font-weight:400}
.pr-allt{display:flex;gap:8px}
.pr-forsyn-haus{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pr-forsyn-haus p{margin:0;font-family:var(--hand);font-size:20px}
.pr-forsyn{display:flex;flex-wrap:wrap;gap:22px;margin-top:14px}
.blad-forsyn{width:calc(210mm * .48);height:calc(297mm * .48);box-shadow:5px 6px 0 var(--ink);border:2px solid var(--ink);overflow:hidden;background:#fff}
.blad-forsyn .blad{transform:scale(.48);transform-origin:0 0}
.blad{position:relative;width:210mm;height:297mm;background:#fff;overflow:hidden}
.blad img{position:absolute}
.maelistika{position:absolute;left:10mm;bottom:4mm;display:flex;align-items:center;gap:3mm;font:7pt/1 system-ui,sans-serif;color:#999}
.stika{display:block;width:50mm;height:2mm;border:.3mm solid #999;border-top:0;background:repeating-linear-gradient(90deg,#999 0 .3mm,transparent .3mm 10mm)}
.bladsida{position:absolute;right:10mm;bottom:4mm;font:7pt/1 system-ui,sans-serif;color:#bbb}
.prent-svaedi{display:none}

/* Bið og skilaboð */
.bid{position:fixed;inset:0;z-index:70;display:grid;place-content:center;justify-items:center;gap:12px;background:#f6f1e3cc;backdrop-filter:blur(3px)}
.snuningur{font-size:64px;animation:klippa 1s ease-in-out infinite}
@keyframes klippa{0%,100%{transform:rotate(-25deg)}50%{transform:rotate(15deg) scale(1.1)}}
.bid p{margin:0;font-family:var(--hand);font-size:22px;background:var(--paper);border:2.5px solid var(--ink);border-radius:14px 9px 15px 8px;padding:8px 16px 5px;box-shadow:3px 3px 0 var(--ink)}
.toast{position:fixed;left:50%;bottom:22px;z-index:80;transform:translate(-50%,140%);opacity:0;pointer-events:none;background:var(--ink);color:var(--paper);padding:10px 18px;border-radius:14px 9px 15px 8px;font-size:15px;transition:transform .25s cubic-bezier(.2,1.4,.4,1),opacity .2s;max-width:calc(100vw - 32px)}
.toast.syna{transform:translate(-50%,0);opacity:1}

@media(max-width:980px){
 .ritill,.skreyta,.km-rammi,.pr-rammi{grid-template-columns:minmax(0,1fr)}
 .ritill-svid{height:58vh;min-height:300px}
 .tolasla{position:static}
 .hetja{grid-template-columns:minmax(0,1fr)}
 .sleppa{display:none}
}
@media(max-width:640px){
 .brand-name{font-size:32px}.brand img{width:34px;height:34px}
 .skref a{font-size:14px;padding:5px 8px 3px}
 .byrja{grid-template-columns:minmax(0,1fr)}
 .stor-takki{grid-template-columns:auto 1fr;justify-items:start;align-items:center;gap:14px;padding:12px 16px}
 .stor-takn{font-size:34px}
 .safn{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .blad-forsyn{width:calc(210mm * .4);height:calc(297mm * .4)}
 .blad-forsyn .blad{transform:scale(.4)}
}
@media print{
 @page{size:A4;margin:0}
 body{background:#fff;margin:0}
 body>*:not(#prent-svaedi){display:none!important}
 .prent-svaedi{display:block!important}
 .blad{break-after:page;page-break-after:always}
}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
