/* Talnaheimur 1.1 */
[hidden]{display:none!important}.topbar{flex-wrap:wrap;gap:12px 22px}.main-nav{gap:2px}.main-nav a{padding:10px}.route-dots{flex-wrap:wrap}.topic-tag{font-size:.75rem;color:var(--blue);display:block;margin-top:10px;font-weight:700}.catalog-toolbar{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:20px 0}.catalog-toolbar label{display:flex;flex-direction:column;gap:5px;font-size:.82rem;font-weight:700}.catalog-toolbar input,.catalog-toolbar select,.town-title input,.town-options select{min-height:46px;border:1px solid var(--line);border-radius:11px;background:white;color:var(--ink);padding:10px 12px;max-width:100%}.catalog-toolbar label:first-child{flex:1;max-width:410px}.catalog-toolbar>span{padding-bottom:10px}.discovery-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:26px}.discovery-card{color:var(--ink);border:1px solid #d3e3d8;border-radius:23px;padding:20px;display:flex;align-items:center;gap:17px;background:#e8f3e9;min-width:0}.discovery-card:hover{box-shadow:0 6px 18px #2345cf14;transform:translateY(-2px)}.discovery-card .eyebrow{font-size:.68rem;margin-bottom:5px;color:#3c795b}.discovery-card h2{font-size:1.45rem;margin-bottom:5px}.discovery-card p{font-size:.86rem;margin:0}.discovery-card>b{margin-left:auto;font-size:1.6rem}.mini-town{width:110px;flex-shrink:0;display:flex;align-items:end}.mini-town svg{width:48px;flex-shrink:0;margin-left:-15px}.mini-town svg:first-child{margin-left:0}.mini-town svg:nth-child(2){width:36px}.detective-discovery{background:#fff2dd;border-color:#efdebf}.detective-discovery .eyebrow{color:#926227}.lulli{width:62px;height:62px;flex-shrink:0;border-radius:21px 21px 21px 6px;background:#7550ac;color:white;display:grid;place-items:center;font-size:2.4rem;font-weight:900;box-shadow:5px 5px 0 #d9c9ed;transform:rotate(-5deg)}.detective-evidence{width:100%}.lulli-claim{display:flex;gap:20px;align-items:start;padding:20px;margin-top:25px;background:#fff4e4;border:1px solid #ecd7b6;border-radius:17px;text-align:left;width:100%}.lulli-claim .lulli{width:42px;height:42px;font-size:1.6rem;border-radius:15px 15px 15px 4px}.lulli-claim b{font-size:.85rem;color:#80571f}.lulli-claim p{font-size:1.02rem;margin:8px 0 0;line-height:1.6}.task-visual:has(.detective-evidence){display:block}.diagnosis{padding:0;border:0;margin:0 0 24px;min-width:0}.diagnosis legend{font-weight:800;margin-bottom:10px}.diagnosis .btn{display:block;text-align:left;width:100%;margin:8px 0;font-weight:600;line-height:1.5;min-height:50px}.diagnosis .btn[aria-pressed=true],.guide-choices .btn[aria-pressed=true]{background:var(--light);border-color:var(--blue);box-shadow:inset 4px 0 var(--blue)}.guide-button{background:#f2edfc;color:#674291;border-color:#d9caed}.guide-panel{border:2px solid #d9caed;border-radius:20px;background:#faf8ff;padding:23px;margin:20px 0}.guide-panel .eyebrow{color:#674291;font-size:.72rem}.guide-panel h2{font-size:1.2rem}.guide-progress{display:flex;gap:8px;margin:15px 0}.guide-progress span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#e5ddf4;font-weight:700;font-size:.85rem}.guide-progress .current{background:#7550ac;color:white}.guide-progress .passed{background:var(--green);color:white}.guide-prompt{font-size:1.08rem;font-weight:700}.guide-choices{display:flex;gap:10px;flex-wrap:wrap}.guide-choices .btn{flex:1 1 auto;max-width:100%;line-height:1.45}.guide-feedback{min-height:50px;font-size:.95rem;padding-top:15px}.guide-feedback.passed{color:var(--green)}.guide-note{margin:20px 0 0}.town-welcome{border-radius:24px;background:#e7f1e7;border:1px solid #d0e0d0;padding:22px 32px;display:flex;align-items:center;gap:40px;margin-bottom:28px}.town-welcome p{max-width:550px;margin:0;color:#4e6b57}.town-skyline{display:flex;align-items:end;min-width:280px;max-width:380px;flex:1}.town-skyline svg{width:20%;margin-left:-8px}.town-skyline svg:nth-child(2){width:25%}.town-skyline svg:nth-child(3){width:28%}.town-task-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.town-task{margin:0;display:flex;flex-direction:column}.town-task p{color:var(--muted);margin-bottom:22px}.town-task h2{font-size:1.3rem}.town-done{color:var(--green);font-weight:750}.town-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px;align-items:start}.town-work{padding:20px;min-width:0}.town-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:20px}.town-title label{display:flex;flex-direction:column;gap:5px;font-size:.8rem;font-weight:750}.town-title input{font-size:1.1rem;width:270px;font-weight:750}.town-tools{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:5px}.town-tool{display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;padding:7px 3px;background:#fff;color:var(--ink);min-height:90px;line-height:1.25}.town-tool svg{width:38px;height:38px}.town-tool>b{height:38px;font-size:1.8rem}.town-tool span{font-size:.75rem;font-weight:700}.town-tool small{font-size:.68rem;color:var(--muted);margin-top:3px}.town-tool[aria-pressed=true]{background:#e8f1e8;border:2px solid #388663;padding:6px 2px;box-shadow:0 3px 0 #388663}.town-options{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:15px 0}.town-options label{font-size:.82rem}.town-options select{padding:6px;min-width:55px;margin-left:5px}.town-options .text-button{font-size:.8rem;margin-left:auto}.town-instruction{min-height:42px}.town-map-wrap{overflow-x:auto;overscroll-behavior-x:contain;padding:5px 3px 5px 0}.town-map{display:grid;grid-template-columns:22px repeat(10,minmax(0,1fr));gap:3px;min-width:505px;padding:10px 8px 7px 0;background:#f1f5ec;border-radius:15px;position:relative}.town-cell{aspect-ratio:1;border:1px solid #d0ddc7;border-radius:7px;background:#fffdf4;padding:1px;display:grid;place-items:center;min-width:0;position:relative;touch-action:manipulation;transition:none}.town-cell:hover{border-color:#4c8e5b;background:#eef8e6}.town-cell svg{width:100%;height:100%;pointer-events:none}.town-cell.selected{outline:3px solid #d29522;outline-offset:-3px;background:#fff2c8}.town-cell.dragging{opacity:.5;transform:scale(.9)}.town-map.moving .town-cell{touch-action:none;cursor:grab}.town-map.moving .town-cell:active{cursor:grabbing}.town-axis{font-size:.7rem;display:grid;place-items:center;color:#587149;font-weight:700}.town-map.show-axis:after{content:'';pointer-events:none;position:absolute;left:calc(50% + 9px);top:9px;bottom:26px;border-left:3px dashed #9068b4}.town-stats{display:flex;gap:8px 18px;flex-wrap:wrap;margin:18px 0;background:#f5f7fd;padding:14px;border-radius:12px;font-size:.85rem;color:var(--muted)}.town-stats b{color:var(--ink)}.town-note-label{display:block;font-size:.86rem;font-weight:750}.town-note-label textarea{display:block;width:100%;margin-top:7px;padding:12px;border-radius:12px;border:1px solid var(--line);resize:vertical;font-weight:400;min-height:100px}.town-brief{border-top:5px solid #388663}.town-brief h2{font-size:1.2rem}.town-checklist{list-style:none;padding:0;margin:20px 0}.town-checklist li{display:flex;gap:10px;margin:14px 0;font-size:.94rem;align-items:start}.town-checklist li span{flex-shrink:0;line-height:1.5;font-weight:900}.town-checklist .passed{color:var(--green)}.town-checklist .pending{color:#906018}.town-brief #town-check{width:100%}.town-hint{font-size:.9rem;margin:18px 0}.town-hint summary{cursor:pointer;font-weight:750;color:var(--blue);padding:8px 0}.town-hint p{margin-top:10px}.town-portfolio-list{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}.town-print-grid{display:grid;grid-template-columns:repeat(10,1fr);width:100%;max-width:640px;border-left:1px solid #888;border-top:1px solid #888}.town-print-grid>div{aspect-ratio:1;border-right:1px solid #888;border-bottom:1px solid #888}.town-print-grid svg{width:100%;height:100%}.print-town{break-inside:avoid;margin:28px 0}.large-text .town-tool span{font-size:.88rem}.large-text .town-tool{min-height:105px}
@media(min-width:1100px){.town-work{position:relative}.town-layout>aside{position:sticky;top:20px}}
@media(max-width:1200px){.topbar{justify-content:space-between}.main-nav{order:3;width:100%;justify-content:center}.brand{margin-right:auto}.town-layout{grid-template-columns:minmax(0,1fr) 265px;gap:16px}.town-tools{grid-template-columns:repeat(4,1fr)}.town-tool{min-height:75px;flex-direction:row;flex-wrap:wrap;gap:5px}.town-tool svg{width:30px;height:30px}.town-tool small{width:100%;margin:0}.mini-town{width:85px}.mini-town svg{width:38px}}
@media(max-width:850px){.town-layout{grid-template-columns:1fr}.town-layout>aside{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}.town-work{margin-bottom:0}.discovery-card{padding:18px;gap:12px}.discovery-card .mini-town{display:none}.discovery-card .lulli{width:45px;height:45px;font-size:1.9rem}.town-welcome{gap:20px;padding:24px}.town-skyline{min-width:210px}.town-tools{grid-template-columns:repeat(8,1fr)}.town-tool{flex-direction:column;min-height:85px}.town-tool span{font-size:.75rem}.town-map{min-width:505px}.main-nav{overflow-x:auto;justify-content:flex-start}.main-nav a{flex-shrink:0}.town-cell{border-radius:6px}}
@media(max-width:540px){.discovery-row,.town-task-grid,.town-layout>aside{grid-template-columns:1fr}.discovery-row{gap:12px}.discovery-card .mini-town{display:flex;width:90px}.discovery-card .lulli{margin:0 20px;width:50px;height:50px}.catalog-toolbar{align-items:stretch}.catalog-toolbar label{max-width:none!important;width:100%;flex:auto!important}.catalog-toolbar input{width:100%}.catalog-toolbar>span{padding:0}.town-welcome{flex-direction:column;gap:15px}.town-skyline{width:260px;flex:auto}.town-title{flex-wrap:wrap}.town-title label{width:100%}.town-title input{width:100%}.town-work{padding:12px}.town-tools{grid-template-columns:repeat(4,1fr)}.town-tool{flex-direction:row;min-height:68px}.town-map-wrap{margin:0 -3px}.town-options{gap:8px}.town-options .text-button{margin-left:0}.town-instruction{font-size:.82rem}.guide-panel{padding:16px}.guide-panel .section-title{align-items:start}.guide-panel h2{font-size:1.05rem}.lulli-claim{padding:16px;gap:12px}.lulli-claim .lulli{width:30px;height:35px;font-size:1.3rem}.discovery-card:hover{transform:none}}
@media(prefers-reduced-motion:reduce){.discovery-card:hover{transform:none}}
@media print{.town-print-grid{max-width:155mm}.print-town svg{display:block;max-height:none!important}.print-town{break-inside:avoid}.lulli-claim{border:1px solid #aaa;background:white;box-shadow:none}.lulli-claim .lulli{box-shadow:none}.print-town *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.town-print-grid>div{height:15.5mm}.town-print-grid svg{max-width:100%}.print-task-visual .detective-evidence .rect-grid{margin:auto}}

.town-map-wrap{scrollbar-width:thin}.town-map-wrap:focus-visible{outline:3px solid var(--orange)}
@media print{.print-sheet{padding:0}.print-town{max-width:180mm}.town-print-grid{max-width:155mm}}
